summaryrefslogtreecommitdiff
path: root/poky/meta
diff options
context:
space:
mode:
authorAndrew Geissler <geissonator@yahoo.com>2022-09-30 21:13:31 +0300
committerAndrew Geissler <andrew@geissonator.com>2022-10-03 05:08:14 +0300
commit87f5cff0cfca11f43851cb3d7d49dd96ced7fe03 (patch)
tree5a748b271a6f682219155ce8292ca034c1b0411c /poky/meta
parent251ad11cced0e148ba7529369597bf1d8d851032 (diff)
downloadopenbmc-87f5cff0cfca11f43851cb3d7d49dd96ced7fe03.tar.xz
subtree updates
meta-raspberrypi: c57b464b88..45d56d82b7: Andrei Gherzan (8): linux-firmware-rpidistro: Fix wireless on Raspberry Pi 4 sdcard_image-rpi.bbclass: Move SDIMG_KERNELIMAGE definitions to their machines raspberrypi0-2w.conf: Include the RPi 0-2w dtb for all 32-bit machines rpi-base.inc: Split IMAGE_BOOT_FILES for kernel image Add support for a ARMv7 machine supporting multiple Raspberry Pi boards ci: Add raspberrypi-armv7 to the build matrix Add support for a ARMv8 machine supporting multiple Raspberry Pi boards ci: Add raspberrypi-armv8 to the build matrix Chris Blättermann (1): meta-raspberrypi: Include the device tree for Raspberry Pi CM4S Khem Raj (2): rpidistro-vlc,rpidistro-ffmpeg: Limit scope to just rpi machines layers: Add langdale to LAYERSERIES_COMPAT Vincent Davis Jr (4): raspidistro-ffmpeg: add support for building raspidistro ffmpeg rpidistro-vlc: add rpidistro VLC build (with MMAL enabled) Add support for optional selection of vlc and ffmpeg docs: add info for raspberrypi distro vlc Vinicius Aquino (1): raspberrypi-firmware: Update to 20220830 snapshot meta-openembedded: a755af4fb5..0782ea454a: Adrian Freihofer (1): networkmanager: update 1.38.0 -> 1.40.0 Alejandro Enedino Hernandez Samaniego (1): emacs: Update to version 28.2 Alex Kiernan (2): libcoap: Fix gnutls/openssl/mbedtls PACKAGECONFIG conflicts libcoap: Upgrade 4.3.0 -> 4.3.1 Alexander Kanavin (7): mozjs-91: update to 91.13.0 collectd: add a python PACKAGECONFIG, off by default zbar: disable python3 support as incompatible with py 3.11 libsigrockdecode: add python 3.11 compatibility minifi-cpp: disable python support as incompatible with python 3.11 mozjs-91: backport a python 3.11 compatibility patch mozjs-78: remove the recipe Andreas Müller (1): octave: upgrade 7.1.0 -> 7.2.0 Andrej Kozemcak (1): squid: upgrade 4.15 -> 5.7 Andres Beltran (1): Make graph dependencies optional Bernhard Messerklinger (1): libconfig-tiny-perl: add recipe Chen Qi (2): passwdqc: fix the libpasswdqc FILES setting polkit: refresh patch Frank de Brabander (1): ntp: add missing runtime dependency on libgcc for sntp Gianfranco Costamagna (1): vboxguestdrivers: upgrade 6.1.36 -> 6.1.38 Hitendra Prajapati (1): wireshark: CVE-2022-3190 Infinite loop in legacy style dissector Howard Cochran (1): ufw: Fix "could not find required binary 'iptables'" Ivan Maidanski (1): bdwgc: Fix typo in EXTRA_OECONF and remove unneeded extra CFLAGS Jan Vermaete (1): makeself: upate anonymous git access and dropped man page. Khem Raj (140): gtk+: Fix function signature of create_menu() ippool: Fix build with clang15 corosync: Upgrade to 3.1.6 dlm: Upgrade to 4.1.1 dante: Upgrade to 1.4.3 ez-ipupdate: Fix build with clang openflow: Include sys/stat.h for fchmod nautilus: Backport a patch to fix build with clang-15 mctp: Update to latest tip of trunk ypbind-mt: Upgrade to 2.7.2 packagegroup-meta-networking: Remove ypbind-mt on musl fping: Fix build with musl iscsi-initiator-utils: Upgrade to 2.1.7 radvd: Fix build on musl linux-atm: Include missing string.h memcached: Upgrade to 1.6.17 openlldp: Upgrade to 1.1.0 ettercap: Pass -D_GNU_SOURCE rdma-core: Fix build with musl openl2tp: Provide prototype for l2tp_api_rpc_check_request iscsi-initiator-utils: Avoid hardcoding sed to /usr/bin/sed toybox: Remove mount.h conflict fix libuser: Upgrade to 0.63 gnome-keyring: Upgrade to 42.1 folks: Disable LTO and implicit-function-declaration as error libgtop: Fix build with clang ot-daemon,ot-br-posix: Fix mbedtls module builds libcurses-perl: Fix main prototype in testtyp.c rasdaemon: Upgrade to 0.6.8 psqlodbc: Upgrade to 13.02.0000 soci: Fix build with clang 15 geany-plugins: Fix type error found with clang 15 nlohmann-fifo: Update to tip of trunk xfce4-dev-tools: Fix configure check for libX11 frr: Fix configure check for libreadline quagga: Fix AC_CHECK_LIB for libreadline libutempter: Upgrade to 1.2.2-alt1 libuio: Update to latest tip of trunk serial-forward: Correct typo in specifying string.h header mcelog: Upgrade to v189 fvwm: Disable int-conversion and implicit-int warnings as errors hddtemp: Add missing prototype for ata_get_powermode in sata.c nana: Include stdlib.h form exit() and abort() functions libsmi: Fix build with clang 15 ckermit: Fix build with clang linuxptp: Include string.h for strncpy() wifi-test-suite: Fix build with clang xf86-video-nouveau: Do not treat implicit-function-declaration as error android-tools: Add protoype declaration for b64_pton libio-pty-perl: Fix build on musl xrdp: Fix build with clang-15 libpwquality: Do not use fgetpwent_r on musl lmbench: Add patch to fix typo including string.h header lxdm: Fix msghdr initialization on musl zabbix: Upgrade to 6.2.2 epeg: Fix AC_CHECK_LIB for libjpeg and libexif gensio: Fix AC_CHECK_LIB for libwrap pam-plugin-ccreds: Fix AC_CHECK_LIB for libdb sblim-sfcb: Fix AC_CHECK_LIB tests for various libraries rdfind: Fix AC_CHECK_LIB for libnettle srecord: Fix AC_CHECK_LIB for gpg-error tokyocabinet: Fix AC_CHECK_LIB test functions libcereal: Do not use uniform_int_distribution<char> template raptor2: Match reutrn type from RAPTOR_ASSERT_OBJECT_POINTER_RETURN_VALUE pam-ssh-agent-auth: Fix __progname configure check daemontools: Fix build with clang15 and musl pmtools: Update patch to include string.h and function prototype for main uw-imap: Fix build with clang/musl libx86: Fix pointer typecasting in assignment obconf: Add fixes for missing function prototypes sblim-sfcc: Fix build with clang sblim-sfcb: Add missing headers file for clang/musl sanlock: Add missing prototype for mem* functions geis: Add missing prototypes to functions libgxim: Enable debug mode hplip: Upgrade to 3.22.6 scsirastools: Pass -D_LARGEFILE64_SOURCE via CFLAGS con2fbmap: Include string.h for strerror directfb-examples: Fix pthread_t assignment type uml-utilities: Add missing headers for exit and str+ functions oprofile: Fix configure check for perf_events support libmcrypt: Suppress implicit-int warnings as errors gtkperf: Define prototype for setup_appdata cyrus-sasl: Fix time.h detection logic in configure enscript: Include string.h form str* function prototypes glm: Disable clang specific warnings mg: Upgrade to 20220614 release gphoto2: Upgrade to 2.5.28 ipmiutil: Add missing headers for protypes of free/malloc/atoi cdrkit: Add missing header for function prototypes fluentbit: Drop redundant patch minifi-cpp: Disable gnu extention of strerror_r when using musl augeas: Check for __GLIBC__ to use gnu extention for strerror_r nlohmann-fifo: Disable cpp11 shuffle with clang/libc++ ipmitool: Update to 1.8.19 autofs: Backport innetgr and strerror_r musl patches linux-atm: Remove AC_CHECK_LIB for libresolv hdf5: Upgrade to 1.13.2 openldap: Fix configure check for pthread_detach libimobiledevice: Explicitly pass -D_GNU_SOURCE via cflags jq: Upgrade to latest and fix configure tests lcdproc: Fix build on non-x86 and arm architectures libsmi: Define _DEFAULT_SOURCE for timegm API tftp-hpa: Fix includes for bsd_signal() sblim-sfcb: Include config.h before using CONFIG_ERROR_H minifi-cpp: Disable lto. ntp: Fix check for pthread_detach netkit-telnet: Add time.h from strftime/time prototypes passwdqc: Upgrade to 2.0.2 lmbench: Fix build time tests and use the scripts/build mcpp: Fix build with clang ot-br-posix: Fix unused variable error sthttpd: Define _GNU_SOURCE if HAVE_SIGSET is set libesmtp: Enable gnu strerror_r on glibc android-tools: Use local strlcpy implementation on glibc uw-imap: Avoid programs using gets() matplotlib: Upgrade to 3.5.3 cockpit: Update to 276 geary: Fix build with clang toybox: Fix build on 32bit arches with 64bit time_t defaults libcdio: Define _LARGEFILE64_SOURCE rocksdb: Upgrade to 7.5.3 release fwupd: Upgrade to 1.8.4 luajit: Use builtin for __clear_cache on clang kexec-tools-klibc: Fix type mismatch in calls to dtb_set_initrd on mips minifi-cpp: Fix build on musl aom: Provide missing function prototypes vulkan-cts,opengl-es-cts: Upgrade to1.3.3.1 and 3.2.8 respectively python3-lxml: Delete fwupd: Fix tostring() call to not have xml_declaration param sox: Enable -D_FILE_OFFSET_BITS=64 and depend on libtool rdfind: Fix patch-fuzz warnings fwupd: Drop sqlite3 from default deps sqlite: Drop sqlite2 recipe wvstreams: Add missing dependency on boost jack: Upgrade to 1.19.21 python3-grpcio-tools: Disable clang's musttail attribute on mips fwupd: Replace python3.7 patch with upstreamed one mdio-tools,mdio-netlink: Upgrade recipes to 1.2.0 python3-requests-unixsocket: Fix override syntax Lei Maohui (5): fltk: Fix buildpaths warning. exiv2: Fix buildpaths warning. tracker-miners: Fix buildpaths warning. gexiv2: Fix buildpaths warning. mariadb: Fix buildpaths warning. Leon Anavi (24): python3-imageio: Upgrade 2.21.1 -> 2.21.2 python3-prompt-toolkit: Upgrade 3.0.30 -> 3.0.31 python3-haversine: Upgrade 2.6.0 -> 2.7.0 python3-transitions: Upgrade 0.8.11 -> 0.9.0 python3-astroid: Upgrade 2.12.5 -> 2.12.9 python3-imageio: Upgrade 2.21.2 -> 2.21.3 python3-portion: Upgrade 2.2.0 -> 2.3.0 python3-networkx: Upgrade 2.8.5 -> 2.8.6 python3-prettytable: Upgrade 3.3.0 -> 3.4.1 python3-pydantic: Upgrade 1.9.1 -> 1.10.2 python3-soupsieve: Upgrade 2.3.1 -> 2.3.2.post1 python3-awesomeversion: Upgrade 22.8.0 -> 22.9.0 python3-ujson: Upgrade 5.4.0 -> 5.5.0 python3-marshmallow: Upgrade 3.17.1 -> 3.18.0 python3-elementpath: Upgrade 3.0.1 -> 3.0.2 python3-traitlets: Upgrade 5.3.0 -> 5.4.0 python3-joblib: Upgrade 1.1.0 -> 1.2.0 python3-astroid: Upgrade 2.12.9 -> 2.12.10 python3-imageio: Upgrade 2.21.3 -> 2.22.0 python3-email-validator: Upgrade 1.2.1 -> 1.3.0 python3-termcolor: Upgrade 1.1.0 -> 2.0.1 python3-aiohttp: Upgrade 3.8.1 -> 3.8.3 python3-pytz-deprecation-shim: Runtime dependencies python3-license-expression: Upgrade 21.6.14 -> 30.0.0 Luca Boccassi (1): dbus-broker: update to v32 Markus Volk (4): pipewire: update 0.3.56 -> 0.3.57 flatbuffers: upgrade 2.0.6 -> 2.0.8 appstream-glib: fix manpage generation jansson: use cmake instead of autotools Martin Jansa (2): lvm2: use bfd even with ld-is-gold in DISTRO_FEATURES libcec: fix runtime dependencies for ${PN}-examples Ming Liu (1): libusbgx: add PACKAGECONFIG to make build predicable Mingli Yu (2): python3-pyzmq: Fix buildpaths issue python3-pyzmq: Add RDEPENDS for python3-pyzmq-ptest Naveen Saini (1): ocl-icd: add nativesdk support Ovidiu Panait (1): redis: build with USE_SYSTEMD=yes when systemd is enabled Patrick Williams (1): unifex: remove recipe Philippe Coval (3): lvgl: Add dialog-lvgl recipe as demo example pim435: Relocate sources to eclipse ot-br-posix: Add dep to ipset as used by firewall Riyaz Khan (2): sdbus-c++: Upgrade sdbus-c++ 1.1.0 to 1.2.0 sdbus-c++-tools: Upgrade sdbus-c++-tools 1.1.0 to 1.2.0 Sergio Prado (1): polkit: refresh patch to fix warning Steffen Olsen (1): postgreql: Fix pg_config not working after buildpaths patch Vincent Davis Jr (1): cglm: New recipe for cglm-0.8.5 Wang Mingyu (16): abseil-cpp: upgrade 20220623.0 -> 20220623.1 chrony: upgrade 4.2 -> 4.3 ctags: upgrade 5.9.20220821.0 -> 5.9.20220828.0 fio: upgrade 3.31 -> 3.32 libblockdev: upgrade 2.26 -> 2.27 libdev-checklib-perl: upgrade 1.14 -> 1.16 lvm2/libdevmapper: upgrade 2.03.11 -> 2.03.16 libforms: upgrade 1.2.3 -> 1.2.4 python3-astroid: upgrade 2.12.4 -> 2.12.5 python3-colorlog: upgrade 6.6.0 -> 6.7.0 python3-django: upgrade 3.2.12 -> 4.1 python3-google-api-core: upgrade 2.8.2 -> 2.10.0 python3-google-api-python-client: upgrade 2.57.0 -> 2.58.0 python3-grpcio: upgrade 1.48.0 -> 1.48.1 python3-grpcio-tools: upgrade 1.48.0 -> 1.48.1 cli11: upgrade 1.9.1 -> 2.2.0 Xu Huan (5): python3-greenlet: upgrade 1.1.2 -> 1.1.3 python3-marshmallow: upgrade 3.17.0 -> 3.17.1 python3-pyudev: upgrade 0.23.2 -> 0.24.0 python3-websocket-client: upgrade 1.3.3 -> 1.4.0 python3-xmlschema: upgrade 2.0.2 -> 2.0.3 Yi Zhao (1): tcpreplay: fix buildpaths issue Zheng Qiu (2): jq: add ptest rsyslog: update 8.2206->8.2208 hongxu (1): python3-h5py: fix wrong file driver version wangmy (78): fuse3: upgrade 3.11.0 -> 3.12.0 xfstests: upgrade 2022.08.07 -> 2022.08.21 gnome-bluetooth: upgrade 42.3 -> 42.4 libadwaita: upgrade 1.1.4 -> 1.1.5 networkmanager-openvpn: upgrade 1.8.18 -> 1.10.0 open-isns: upgrade 0.101 -> 0.102 boost-sml: upgrade 1.1.5 -> 1.1.6 ctags: upgrade 5.9.20220828.0 -> 5.9.20220904.0 hwdata: upgrade 0.361 -> 0.362 modemmanager: upgrade 1.18.10 -> 1.18.12 php: upgrade 8.1.9 -> 8.1.10 poppler: upgrade 22.08.0 -> 22.09.0 syslog-ng: upgrade 3.37.1 -> 3.38.1 libio-socket-ssl-perl: upgrade 2.074 -> 2.075 python3-aiofiles: upgrade 0.8.0 -> 22.1.0 python3-antlr4-runtime: upgrade 4.10 -> 4.11.1 python3-croniter: upgrade 1.3.5 -> 1.3.7 python3-google-api-python-client: upgrade 2.58.0 -> 2.60.0 python3-langtable: upgrade 0.0.58 -> 0.0.59 python3-oauthlib: upgrade 3.2.0 -> 3.2.1 python3-pymetno: upgrade 0.9.0 -> 0.10.0 python3-sqlalchemy: upgrade 1.4.40 -> 1.4.41 python3-twisted: upgrade 22.4.0 -> 22.8.0 python3-websocket-client: upgrade 1.4.0 -> 1.4.1 python3-xmlschema: upgrade 2.0.3 -> 2.0.4 libadwaita: upgrade 1.1.5 -> 1.2.0 bats: upgrade 1.7.0 -> 1.8.0 ctags: upgrade 5.9.20220904.0 -> 5.9.20220911.0 iceauth: upgrade 1.0.8 -> 1.0.9 iwd: upgrade 1.29 -> 1.30 libblockdev: upgrade 2.27 -> 2.28 libjcat: upgrade 0.1.11 -> 0.1.12 libpfm4: upgrade 4.11.0 -> 4.12.0 libxmlb: upgrade 0.3.9 -> 0.3.10 neon: upgrade 0.32.2 -> 0.32.4 setxkbmap: upgrade 1.3.2 -> 1.3.3 xclock: upgrade 1.0.9 -> 1.1.1 xkbutils: upgrade 1.0.4 -> 1.0.5 xlsfonts: upgrade 1.0.6 -> 1.0.7 xmag: upgrade 1.0.6 -> 1.0.7 xwud: upgrade 1.0.5 -> 1.0.6 python3-cachecontrol: upgrade 0.12.11 -> 0.12.12 python3-cantools: upgrade 37.1.2 -> 37.2.0 python3-eth-typing: upgrade 3.1.0 -> 3.2.0 python3-fasteners: upgrade 0.17.3 -> 0.18 python3-flask-socketio: upgrade 5.3.0 -> 5.3.1 python3-google-api-core: upgrade 2.10.0 -> 2.10.1 python3-google-api-python-client: upgrade 2.60.0 -> 2.61.0 python3-grpcio-tools: upgrade 1.48.1 -> 1.49.0 python3-grpcio: upgrade 1.48.1 -> 1.49.0 python3-jsonrpcserver: upgrade 5.0.8 -> 5.0.9 python3-protobuf: upgrade 4.21.5 -> 4.21.6 xfstests: upgrade 2022.08.21 -> 2022.09.04 gnome-font-viewer: upgrade 42.0 -> 43.0 tracker: upgrade 3.3.3 -> 3.4.0 yelp-xsl: upgrade 42.0 -> 42.1 dnsmasq: upgrade 2.86 -> 2.87 unbound: upgrade 1.16.2 -> 1.16.3 cairomm-1.16: upgrade 1.16.1 -> 1.16.2 ctags: upgrade 5.9.20220911.0 -> 5.9.20220925.0 libgee: upgrade 0.20.5 -> 0.20.6 libpeas: upgrade 1.32.0 -> 1.34.0 opencl-headers: upgrade 2022.05.18 -> 2022.09.23 pangomm-2.48: upgrade 2.50.0 -> 2.50.1 thrift: upgrade 0.16.0 -> 0.17.0 zabbix: upgrade 6.2.2 -> 6.2.3 python3-djangorestframework: upgrade 3.13.1 -> 3.14.0 python3-google-api-python-client: upgrade 2.61.0 -> 2.62.0 python3-google-auth: upgrade 2.11.0 -> 2.11.1 python3-grpcio-tools: upgrade 1.49.0 -> 1.49.1 python3-grpcio: upgrade 1.49.0 -> 1.49.1 python3-h11: upgrade 0.13.0 -> 0.14.0 python3-humanize: upgrade 4.3.0 -> 4.4.0 python3-langtable: upgrade 0.0.59 -> 0.0.60 python3-ldap: upgrade 3.4.2 -> 3.4.3 python3-pandas: upgrade 1.4.4 -> 1.5.0 python3-path: upgrade 16.4.0 -> 16.5.0 python3-xmlschema: upgrade 2.0.4 -> 2.1.0 zhengrq.fnst (8): python3-astroid: upgrade 2.12.2 -> 2.12.4 python3-flatbuffers: upgrade 2.0.6 -> 2.0.7 python3-flask-socketio: upgrade 5.2.0 -> 5.3.0 python3-gnupg: upgrade 0.4.9 -> 0.5.0 python3-natsort: upgrade 8.1.0 -> 8.2.0 python3-sympy: upgrade 1.10.1 -> 1.11.1 python3-pandas: upgrade 1.4.3 -> 1.4.4 python3-parsimonious: upgrade 0.9.0 -> 0.10.0 zhengruoqin (15): wolfssl: upgrade 5.4.0 -> 5.5.0 ser2net: upgrade 4.3.7 -> 4.3.8 tree: upgrade 2.0.3 -> 2.0.4 xorgxrdp: upgrade 0.2.18 -> 0.9.19 python3-zeroconf: upgrade 0.39.0 -> 0.39.1 smarty: upgrade 4.2.0 -> 4.2.1 python3-pycocotools: upgrade 2.0.4 -> 2.0.5 python3-pyproj: upgrade 3.3.1 -> 3.4.0 python3-pyzmq: upgrade 23.2.1 -> 24.0.0 python3-regex: upgrade 2022.8.17 -> 2022.9.13 python3-pyjwt: upgrade 2.4.0 -> 2.5.0 python3-pyscaffold: upgrade 4.3 -> 4.3.1 python3-pyzmq: upgrade 24.0.0 -> 24.0.1 python3-sqlparse: upgrade 0.4.2 -> 0.4.3 python3-web3: upgrade 5.30.0 -> 5.31.0 meta-security: 10fdc2b13a..824d2762f6: Armin Kuster (4): suricata: fix compile issue cryptmount: fix systemd service install update sssd to 2.7.4 update chipsec to 1.8.8 poky: 9b1db65e7d..5200799866: Alejandro Hernandez Samaniego (1): rootfs.py: dont try to list installed packages for baremetal images Alexander Kanavin (15): selftest/cases/bblayers.py: build python3-jsonschema only once oe-setup-builddir: do not suggest local.conf as a source of examples init-system-helpers: exclude experimental tags from version check ref-manual: correct the location of default configuration template dev-manual: common-tasks.rst: drop the output of 'bitbake-layers --help' common-tasks.rst: describe the layer setup tooling dev-manual: common-tasks.rst: describe the newly added layer setup and template config commands dev-manual: common-tasks.rst: rewrite the section about configuration templates github-releases: add a class that consolidates version checks meta: fix version checks in all github recipes using the github-releases class virglrenderer: use https for fetching from gitlab local.conf.sample: correct the location of public hashserv scripts/oe-setup-builddir: do not read TEMPLATECONF from templateconf.cfg rpm: update 4.18.0-rc1 -> 4.18.0-release tzdata: update to 2022d Alexandre Belloni (2): runqemu: display host uptime when starting oeqa/runtime/dnf: fix typo Andrei Gherzan (6): depmodwrapper-cross: Take into consideration kernel package name kernel.bbclass: Pass the kernel package name to depmodwrapper kernel-module-split.bbclass: Pass the kernel package name to depmodwrapper rootfs.py: Run depmod(wrapper) against each compiled kernel rootfs.py: Drop FAKEROOT support in exec function grub: Allow build on armv7ve/a with softfp Aryaman Gupta (1): bitbake: doc: bitbake-user-manual: Add definition for BB_PRESSURE_MAX variables Bob Henz (1): systemd-systemctl: Fix WantedBy processing Bruce Ashfield (11): linux-yocto/5.15: update to v5.15.63 linux-yocto/5.19: update to v5.19.5 linux-yocto/5.19: update to v5.19.7 linux-yocto/5.15: update to v5.15.65 kern-tools: fix queue processing in relative TOPDIR configurations kern-tools: allow 'y' or 'm' to avoid config audit warnings linux-yocto/5.19: update to v5.19.9 linux-yocto/5.15: update to v5.15.68 linux-yocto/5.19: cfg: fix ACPI warnings for -tiny linux-yocto/5.15: cfg: fix ACPI warnings for -tiny linux-yocto/5.19: fix gcc-11 warning Changhyeok Bae (2): iproute2: Unset CLEANBROKEN iproute2: merge .inc into .bb Changqing Li (1): parselogs.py: ignore systemd-logind warning message Chen Qi (2): shadow-securetty: allow ttyS4 for amd-snowyowl-64 useradd-example: do not use unsupported clear text password Daniel Gomez (3): rootfs-postcommands: Remove dropbear inconsistent comment gtk-icon-cache: Fix GTKIC_CMD if-else condition dropbear: Add enable-x11-forwarding PACKAGECONFIG option Daniel McGregor (2): coreutils: add openssl PACKAGECONFIG gcc: set the default target arch Denys Dmytriyenko (1): glibc-locale: explicitly remove empty dirs in ${libdir} Dmitry Baryshkov (2): linux-firmware: upgrade 20220708 -> 20220913 linux-firmware: package new Qualcomm firmware Etienne Cordonnier (2): python3: add PACKAGECONFIG[editline] opkg: add option for zstd support Fabio Estevam (1): README.hardware.md: Fix the tftp example Florin Diaconescu (1): expat: upgrade 2.4.8 -> 2.4.9 He Zhe (2): lttng-tools: Disable on qemuriscv32 lttng-tools: Disable on riscv32 Johan Korsnes (1): ref-manual: variables: document KERNEL_IMAGETYPES John Edward Broadbent (1): externalsrc: git submodule--helper list unsupported Jose Quaresma (2): bitbake: lib/bb: warning when the debug message is invalid bitbake: fetch2/crate fixup c212b0f3 loglevel Joshua Watt (2): oeqa: qemurunner: Report UNIX Epoch timestamp on login bitbake: bitbake: Fix a few more logger debug() calls Kai Kang (2): binutils: handle symlink files for gprofng binutils: another way to clear GPROFNG_ALTS for clang and musl Khem Raj (20): autoconf: Update K & R stype functions webkitgtk: Update to 2.6.37 rust: Use variable to specify extra tools to install boost: Refrain bjam from poking into host includes gobject-introspection: Do not hardcode objdump name binutils-cross-canadian: Do not package gprofng.rc webkitgtk: Fix build on 32bit arm python3-lxml: Add recipe bitbake.conf: Define TC_CXX_RUNTIME rust: Use libc++ runtime when using clang with llvm runtime glibc: Upgrade to tip of 2.36 branch binutils: Ignore CVE-2022-38126 CVE-2022-38127 inetutils: Fix remote DoS vulnerability in inetutils-telnetd curl: Add missing perl modules in ptest rdepends elfutils: Enable ptests on musl targets grub: Apply backports to fix build with clang on x86 apt: Fix type mismatches and ptest builds linux-yocto: Enable mdio for qemu gcompat: Add __getauxval wrapper needed on aarch64 ref-manual: Define TC_CXX_RUNTIME Konrad Weihmann (1): python3-idna: migrate to flit-core Kristian Amlie (1): externalsrc: Don't wipe out src dir when EXPORT_FUNCTIONS is used. Leon Anavi (1): python3-manifest.json: Add zoneinfo Markus Volk (5): squashfs-tools: build with lzo support libsdl2: update 2.0.22 -> 2.24.0 libdrm: upgrade 2.4.112 -> 2.4.113 mesa: upgrade 22.1.6 -> 22.2.0 virglrenderer: upgrade 0.9.1 -> 0.10.3 Martin Jansa (3): webkitgtk: fix gstreamer include paths libxml2: Port gentest.py to Python-3 create-pull-request: don't switch the git remote protocol to git:// Mattias Jernberg (1): bitbake: utils: Add enable_loopback_networking() Michael Opdenacker (8): bitbake: bitbake-user-manual: mention pydevshell in OE dev-manual: common-tasks.rst: refer to Python functions in BitBake manual ref-manual: features.rst: add missing default distro features ref-manual: variables.rst: remove BBPATH ref-manual: structure.rst: add reference to the contents of the build directory ref-manual: structure.rst: improve information about build/cache/ ref-manual: variables.rst: correct templateconf.cfg file name ref-manual: structure.rst: add more subsection levels Mikko Rapeli (7): u-boot: switch from append to += in SRC_URI glibc-tests: use += instead of :append go-native: switch from SRC_URI:append to SRC_URI += python3-rfc3986-validator: switch from SRC_URI:append to SRC_URI += linux-libc-headers: switch from SRC_URI:append to SRC_URI += common-tasks.rst: remove SRC_URI:append from examples kernel-dev/common.rst: remove SRC_URI:append from examples Mingli Yu (1): busybox: add devmem 128-bit support Otavio Salvador (2): bitbake: toaster: fix kirkstone version rust-hello-world: move to recipes-extended Pascal Bach (1): bitbake: fetch2/ssh.py: fix checkstatus Paulo Neves (2): watchdog: Remove unneeded tirpc dependency bitbake: fetch2: Remove unneeded conditional Pavel Zhukov (1): core-image.bbclass: Exclude openssh complementary packages Peter Bergin (1): rootfs-postcommands.bbclass: avoid moving ssh host keys if etc is writable Peter Kjellerstedt (6): cairo: Adapt the license information based on what is being built oe-setup-builddir: Correct when validation of the templates dir is run oe-setup-builddir: Simplify error handling oe-setup-builddir: Avoid shellcheck warnings oe-setup-builddir: Keep templateconf.cfg relative if $TEMPLATECONF is oe-setup-builddir: Always update templateconf.cfg Petr Vorel (1): ltp: Update list of tests not buildable on musl Richard Purdie (54): bitbake: wget: Avoid bad checksum race issues bitbake: asyncrpc/client: Fix unix domain socket chdir race issues build-appliance-image: Update to master head revision sstate: Fix sstate file mirroring checksum issue bitbake: fetch2: Ensure mirror tarballs don't enforce checksum qemu: Upgrade 7.0.0 -> 7.1.0 qemurunner: Update to match qmp changes build-appliance-image: Update to master head revision vim: Upgrade 9.0.0341 -> 9.0.0453 selftest/qemurunner: Work around possible control character contamination oetest: Drop unused variable oetest: Drop getResults usage from oeRuntimeTest oeqa/utils/decorators: Drop unused decorators oeqa/utils/decorators: Drop getResults autoconf-archive: upgrade 2022.02.11 -> 2022.09.03 ofono: upgrade 1.34 -> 2.0 ccache: upgrade 4.6.2 -> 4.6.3 btrfs-tools: upgrade 5.19 -> 5.19.1 dnf: upgrade 4.13.0 -> 4.14.0 git: upgrade 2.37.2 -> 2.37.3 ell: upgrade 0.52 -> 0.53 file: upgrade 5.42 -> 5.43 ninja: upgrade 1.11.0 -> 1.11.1 libcomps: upgrade 0.1.18 -> 0.1.19 python3-hatchling: upgrade 1.8.1 -> 1.9.0 meson: upgrade 0.63.1 -> 0.63.2 python3-idna: upgrade 3.3 -> 3.4 librepo: upgrade 1.14.4 -> 1.14.5 python3-hypothesis: upgrade 6.46.11 -> 6.54.5 python3-numpy: upgrade 1.23.2 -> 1.23.3 libdnf: upgrade 0.68.0 -> 0.69.0 python3-psutil: upgrade 5.9.1 -> 5.9.2 ffmpeg: upgrade 5.1 -> 5.1.1 repo: upgrade 2.29.1 -> 2.29.2 nghttp2: upgrade 1.48.0 -> 1.49.0 libjitterentropy: upgrade 3.4.0 -> 3.4.1 sqlite3: upgrade 3.39.2 -> 3.39.3 diffoscope: upgrade 220 -> 221 python3-certifi: upgrade 2022.6.15 -> 2022.9.14 libpng: upgrade 1.6.37 -> 1.6.38 numactl: upgrade 2.0.14 -> 2.0.15 rpm: Upgrade 4.17.1 -> 4.18rc1 perf: Fix for recent kernel upgrades oeqa/runtime/virgl: Update test to match new mesa version vim: Upgrade 9.0.453 -> 9.0.541 vim: Upgrade 9.0.0541 -> 9.0.0598 qemu: Add patch to address arm qemu upgrade issues layer.conf: Update to use langdale as the core layer name poky: Update to 4.1 version poky: Update to match poky version numbers bitbake: bitbake: Bump to version 2.2.0 build-appliance-image: Update to master head revision go: Fix reproducibility failures build-appliance-image: Update to master head revision Robert Joslyn (6): xorg-lib-common: Add variable to set tarball type libxfont2: Update 2.0.5 to 2.0.6 libxau: Update 1.0.9 to 1.0.10 libfontenc: Update 1.1.4 to 1.1.6 flac: Update 1.3.4 to 1.4.0 tzdata: Update from 2022b to 2022c Ross Burton (16): meta-selftest/poison: improve sysroot poisoning test case gcc-cross: pass -Werror=poison-system-directories to compiler stages gcc: remove obsolete 0012-export-CPP.patch xmlto: remove redundant patches tiff: backport fix for CVE-2022-2953 gcc: remove obsolete poisoned calloc workaround gcc: remove obsolete MinGW patch oeqa/selftest/debuginfod: don't re-use the database libgcrypt: disable bench-slope test case libxml2: don't override XML_CATALOG_FILES in xmllint wrapper if already set glibc: mark a CVE where we have merged the fix qemu: re-add the fix for CVE-2022-1050 qemu: fix CVE-2022-2962 dnf: add dummy packages for testing oeqa/runtime/dnf: use dnf-test packages Revert "wic/plugins/images/direct: Allow changes in fstab on rootfs" Ruiqiang Hao (1): tune-neoversen2: support tune-neoversen2 base on armv9a Samuli Piippo (2): Revert "gcc-cross-canadian: Add symlink to real-ld alongside other symlinks" gcc-cross-canadian: add default plugin linker Stefano Babic (1): libubootenv: upgrade 0.3.2 -> 0.3.3 Sundeep KOKKONDA (1): rust-cross-canadian: Fix for the issue caused by using sdk shell Teoh Jay Shen (1): bind: upgrade 9.18.6 -> 9.18.7 Tom Hochstein (2): cmake: Fix CMAKE_SYSTEM_PROCESSOR setting for SDK connman: Drop redundant nfsroot handling Ulrich Ölmann (5): icecc.bbclass: fix typos icecc.bbclass: delete 'rm' command manuals: fix paths to default templates & clean up whitespaces icecc.bbclass: fix filename of recipe in comment manuals: fix typos in the context of 'icecc' & clean up whitespaces Vyacheslav Yurkov (5): oeqa/selftest: drop image_feature test from overlayfs classes: Update overlayfs classes to use new bitbake functionality files: overlayfs-etc: refactor preinit template classes: files: Extend overlayfs-etc class oeqa/selftest: Add lower layer test for overlayfs-etc niko.mauno@vaisala.com (2): systemd: Add 'no-dns-fallback' PACKAGECONFIG option systemd: Fix unwritable /var/lock when no sysvinit handling pgowda (4): rust: Add linker configurations for cross compilation rust: Enable verbose-tests to get the test results in readable format binutils : CVE-2022-38533 binutils : Fix CVE-2022-38128 wangmy (9): cracklib: upgrade 2.9.7 -> 2.9.8 kmscube: upgrade to latest revision piglit: upgrade to latest revision python3-dtschema: upgrade 2022.8.1 -> 2022.8.3 python3-mako: upgrade 1.2.1 -> 1.2.2 python3-pathspec: upgrade 0.9.0 -> 0.10.1 python3-pytest: upgrade 7.1.2 -> 7.1.3 vala: upgrade 0.56.2 -> 0.56.3 less: upgrade 600 -> 608 Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I1705b78d8a5ef5762fe770a69ed9b866fac52ccf
Diffstat (limited to 'poky/meta')
-rw-r--r--poky/meta/classes-global/sstate.bbclass1
-rw-r--r--poky/meta/classes-recipe/core-image.bbclass4
-rw-r--r--poky/meta/classes-recipe/externalsrc.bbclass27
-rw-r--r--poky/meta/classes-recipe/github-releases.bbclass3
-rw-r--r--poky/meta/classes-recipe/gtk-icon-cache.bbclass2
-rw-r--r--poky/meta/classes-recipe/kernel-module-split.bbclass2
-rw-r--r--poky/meta/classes-recipe/kernel.bbclass2
-rw-r--r--poky/meta/classes-recipe/overlayfs-etc.bbclass (renamed from poky/meta/classes/overlayfs-etc.bbclass)5
-rw-r--r--poky/meta/classes-recipe/overlayfs.bbclass (renamed from poky/meta/classes/overlayfs.bbclass)0
-rw-r--r--poky/meta/classes-recipe/rootfs-postcommands.bbclass31
-rw-r--r--poky/meta/classes-recipe/testimage.bbclass11
-rw-r--r--poky/meta/classes/icecc.bbclass47
-rw-r--r--poky/meta/conf/bitbake.conf1
-rw-r--r--poky/meta/conf/distro/include/maintainers.inc1
-rw-r--r--poky/meta/conf/distro/include/tcmode-default.inc2
-rw-r--r--poky/meta/conf/layer.conf2
-rw-r--r--poky/meta/conf/machine/include/arm/arch-armv9a.inc28
-rw-r--r--poky/meta/conf/machine/include/arm/armv9a/tune-neoversen2.inc10
-rw-r--r--poky/meta/files/overlayfs-etc-preinit.sh.in23
-rw-r--r--poky/meta/lib/oe/rootfs.py40
-rw-r--r--poky/meta/lib/oeqa/oetest.py22
-rw-r--r--poky/meta/lib/oeqa/runtime/cases/dnf.py54
-rw-r--r--poky/meta/lib/oeqa/runtime/cases/parselogs.py2
-rw-r--r--poky/meta/lib/oeqa/selftest/cases/bblayers.py4
-rw-r--r--poky/meta/lib/oeqa/selftest/cases/debuginfod.py19
-rw-r--r--poky/meta/lib/oeqa/selftest/cases/overlayfs.py103
-rw-r--r--poky/meta/lib/oeqa/utils/decorators.py85
-rw-r--r--poky/meta/lib/oeqa/utils/qemurunner.py32
-rw-r--r--poky/meta/recipes-bsp/grub/files/0001-configure-Remove-obsoleted-malign-jumps-loops-functi.patch48
-rw-r--r--poky/meta/recipes-bsp/grub/files/0002-configure-Check-for-falign-jumps-1-beside-falign-loo.patch59
-rw-r--r--poky/meta/recipes-bsp/grub/grub2.inc12
-rw-r--r--poky/meta/recipes-bsp/u-boot/libubootenv_0.3.3.bb (renamed from poky/meta/recipes-bsp/u-boot/libubootenv_0.3.2.bb)6
-rw-r--r--poky/meta/recipes-bsp/u-boot/u-boot_2022.07.bb2
-rw-r--r--poky/meta/recipes-connectivity/avahi/avahi_0.8.bb6
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.18.7/0001-avoid-start-failure-with-bind-user.patch (renamed from poky/meta/recipes-connectivity/bind/bind-9.18.6/0001-avoid-start-failure-with-bind-user.patch)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.18.7/0001-named-lwresd-V-and-start-log-hide-build-options.patch (renamed from poky/meta/recipes-connectivity/bind/bind-9.18.6/0001-named-lwresd-V-and-start-log-hide-build-options.patch)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.18.7/bind-ensure-searching-for-json-headers-searches-sysr.patch (renamed from poky/meta/recipes-connectivity/bind/bind-9.18.6/bind-ensure-searching-for-json-headers-searches-sysr.patch)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.18.7/bind9 (renamed from poky/meta/recipes-connectivity/bind/bind-9.18.6/bind9)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.18.7/conf.patch (renamed from poky/meta/recipes-connectivity/bind/bind-9.18.6/conf.patch)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.18.7/generate-rndc-key.sh (renamed from poky/meta/recipes-connectivity/bind/bind-9.18.6/generate-rndc-key.sh)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.18.7/init.d-add-support-for-read-only-rootfs.patch (renamed from poky/meta/recipes-connectivity/bind/bind-9.18.6/init.d-add-support-for-read-only-rootfs.patch)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.18.7/make-etc-initd-bind-stop-work.patch (renamed from poky/meta/recipes-connectivity/bind/bind-9.18.6/make-etc-initd-bind-stop-work.patch)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.18.7/named.service (renamed from poky/meta/recipes-connectivity/bind/bind-9.18.6/named.service)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind_9.18.7.bb (renamed from poky/meta/recipes-connectivity/bind/bind_9.18.6.bb)2
-rw-r--r--poky/meta/recipes-connectivity/connman/connman/connman39
-rw-r--r--poky/meta/recipes-connectivity/inetutils/inetutils/CVE-2022-39028.patch54
-rw-r--r--poky/meta/recipes-connectivity/inetutils/inetutils_2.3.bb1
-rw-r--r--poky/meta/recipes-connectivity/iproute2/iproute2.inc91
-rw-r--r--poky/meta/recipes-connectivity/iproute2/iproute2_5.19.0.bb91
-rw-r--r--poky/meta/recipes-connectivity/ofono/ofono_2.0.bb (renamed from poky/meta/recipes-connectivity/ofono/ofono_1.34.bb)2
-rw-r--r--poky/meta/recipes-core/busybox/busybox/0001-devmem-add-128-bit-width.patch128
-rw-r--r--poky/meta/recipes-core/busybox/busybox_1.35.0.bb1
-rw-r--r--poky/meta/recipes-core/coreutils/coreutils_9.1.bb1
-rw-r--r--poky/meta/recipes-core/dropbear/dropbear/0007-Fix-X11-build-failure-use-DROPBEAR_PRIO_LOWDELAY.patch28
-rw-r--r--poky/meta/recipes-core/dropbear/dropbear_2022.82.bb11
-rw-r--r--poky/meta/recipes-core/ell/ell_0.53.bb (renamed from poky/meta/recipes-core/ell/ell_0.52.bb)2
-rw-r--r--poky/meta/recipes-core/expat/expat_2.4.9.bb (renamed from poky/meta/recipes-core/expat/expat_2.4.8.bb)11
-rw-r--r--poky/meta/recipes-core/glibc/glibc-locale.inc5
-rw-r--r--poky/meta/recipes-core/glibc/glibc-tests_2.36.bb4
-rw-r--r--poky/meta/recipes-core/glibc/glibc-version.inc2
-rw-r--r--poky/meta/recipes-core/glibc/glibc_2.36.bb3
-rw-r--r--poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb2
-rw-r--r--poky/meta/recipes-core/initscripts/init-system-helpers_1.64.bb1
-rw-r--r--poky/meta/recipes-core/libcgroup/libcgroup_3.0.0.bb6
-rw-r--r--poky/meta/recipes-core/libxml/libxml2/0001-Port-gentest.py-to-Python-3.patch814
-rw-r--r--poky/meta/recipes-core/libxml/libxml2_2.9.14.bb14
-rw-r--r--poky/meta/recipes-core/musl/gcompat/0001-auxv-new-module.patch59
-rw-r--r--poky/meta/recipes-core/musl/gcompat_git.bb7
-rwxr-xr-xpoky/meta/recipes-core/systemd/systemd-systemctl/systemctl11
-rw-r--r--poky/meta/recipes-core/systemd/systemd/00-create-volatile.conf1
-rw-r--r--poky/meta/recipes-core/systemd/systemd_251.4.bb1
-rw-r--r--poky/meta/recipes-core/udev/eudev_3.2.11.bb7
-rw-r--r--poky/meta/recipes-devtools/apt/apt/0001-typecast-time_t-and-suseconds_t-from-std-chrono.patch64
-rw-r--r--poky/meta/recipes-devtools/apt/apt/0002-interactive-helper-Undefine-_FORTIFY_SOURCE.patch27
-rw-r--r--poky/meta/recipes-devtools/apt/apt_2.4.5.bb2
-rw-r--r--poky/meta/recipes-devtools/autoconf-archive/autoconf-archive_2022.09.03.bb (renamed from poky/meta/recipes-devtools/autoconf-archive/autoconf-archive_2022.02.11.bb)2
-rw-r--r--poky/meta/recipes-devtools/autoconf/autoconf/0001-Port-to-compilers-that-moan-about-K-R-func-decls.patch138
-rw-r--r--poky/meta/recipes-devtools/autoconf/autoconf/0001-specify-void-prototype-for-functions-with-no-paramet.patch64
-rw-r--r--poky/meta/recipes-devtools/autoconf/autoconf_2.71.bb2
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils-2.39.inc8
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils-cross-canadian.inc6
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils.inc19
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0013-CVE-2022-38533.patch36
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0014-CVE-2022-38128-1.patch350
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0014-CVE-2022-38128-2.patch536
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0014-CVE-2022-38128-3.patch95
-rw-r--r--poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_5.19.1.bb (renamed from poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_5.19.bb)2
-rw-r--r--poky/meta/recipes-devtools/ccache/ccache_4.6.3.bb (renamed from poky/meta/recipes-devtools/ccache/ccache_4.6.2.bb)12
-rw-r--r--poky/meta/recipes-devtools/ccache/files/0001-Include-time.h-for-time_t.patch29
-rw-r--r--poky/meta/recipes-devtools/ccache/files/0002-config-Include-sys-types.h-for-mode_t-defintion.patch25
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake5
-rw-r--r--poky/meta/recipes-devtools/dnf/dnf_4.14.0.bb (renamed from poky/meta/recipes-devtools/dnf/dnf_4.13.0.bb)8
-rw-r--r--poky/meta/recipes-devtools/dosfstools/dosfstools_4.2.bb6
-rw-r--r--poky/meta/recipes-devtools/elfutils/elfutils_0.187.bb4
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0001-tests-Add-libeu-to-tests-needing-error-API.patch147
-rw-r--r--poky/meta/recipes-devtools/file/file_5.43.bb (renamed from poky/meta/recipes-devtools/file/file_5.42.bb)2
-rw-r--r--poky/meta/recipes-devtools/flex/flex_2.6.4.bb8
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-12.2.inc3
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-common.inc10
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc3
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-target.inc2
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0002-gcc-poison-system-directories.patch13
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0012-export-CPP.patch50
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0022-mingw32-Enable-operation_not_supported.patch26
-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/git/git_2.37.3.bb (renamed from poky/meta/recipes-devtools/git/git_2.37.2.bb)2
-rw-r--r--poky/meta/recipes-devtools/go/go-native_1.19.bb2
-rw-r--r--poky/meta/recipes-devtools/go/go-runtime.inc2
-rw-r--r--poky/meta/recipes-devtools/libcomps/libcomps_0.1.19.bb (renamed from poky/meta/recipes-devtools/libcomps/libcomps_0.1.18.bb)2
-rw-r--r--poky/meta/recipes-devtools/libdnf/libdnf_0.69.0.bb (renamed from poky/meta/recipes-devtools/libdnf/libdnf_0.68.0.bb)2
-rw-r--r--poky/meta/recipes-devtools/librepo/librepo/0001-metadata_downloader-Include-unistd.h-for-lseek.patch34
-rw-r--r--poky/meta/recipes-devtools/librepo/librepo_1.14.5.bb (renamed from poky/meta/recipes-devtools/librepo/librepo_1.14.4.bb)3
-rw-r--r--poky/meta/recipes-devtools/meson/meson_0.63.2.bb (renamed from poky/meta/recipes-devtools/meson/meson_0.63.1.bb)10
-rw-r--r--poky/meta/recipes-devtools/ninja/ninja_1.11.1.bb (renamed from poky/meta/recipes-devtools/ninja/ninja_1.11.0.bb)2
-rw-r--r--poky/meta/recipes-devtools/opkg/opkg_0.6.0.bb1
-rw-r--r--poky/meta/recipes-devtools/perl-cross/perlcross_1.4.bb6
-rw-r--r--poky/meta/recipes-devtools/python/python3-certifi_2022.9.14.bb (renamed from poky/meta/recipes-devtools/python/python3-certifi_2022.6.15.bb)4
-rw-r--r--poky/meta/recipes-devtools/python/python3-dtschema_2022.8.3.bb (renamed from poky/meta/recipes-devtools/python/python3-dtschema_2022.8.1.bb)2
-rw-r--r--poky/meta/recipes-devtools/python/python3-hatchling_1.9.0.bb (renamed from poky/meta/recipes-devtools/python/python3-hatchling_1.8.1.bb)2
-rw-r--r--poky/meta/recipes-devtools/python/python3-hypothesis_6.54.5.bb (renamed from poky/meta/recipes-devtools/python/python3-hypothesis_6.46.11.bb)2
-rw-r--r--poky/meta/recipes-devtools/python/python3-idna_3.4.bb (renamed from poky/meta/recipes-devtools/python/python3-idna_3.3.bb)9
-rw-r--r--poky/meta/recipes-devtools/python/python3-lxml_4.9.1.bb42
-rw-r--r--poky/meta/recipes-devtools/python/python3-mako_1.2.2.bb (renamed from poky/meta/recipes-devtools/python/python3-mako_1.2.1.bb)2
-rw-r--r--poky/meta/recipes-devtools/python/python3-numpy_1.23.3.bb (renamed from poky/meta/recipes-devtools/python/python3-numpy_1.23.2.bb)9
-rw-r--r--poky/meta/recipes-devtools/python/python3-pathspec_0.10.1.bb (renamed from poky/meta/recipes-devtools/python/python3-pathspec_0.9.0.bb)2
-rw-r--r--poky/meta/recipes-devtools/python/python3-psutil_5.9.2.bb (renamed from poky/meta/recipes-devtools/python/python3-psutil_5.9.1.bb)2
-rw-r--r--poky/meta/recipes-devtools/python/python3-pycairo_1.21.0.bb6
-rw-r--r--poky/meta/recipes-devtools/python/python3-pytest_7.1.3.bb (renamed from poky/meta/recipes-devtools/python/python3-pytest_7.1.2.bb)2
-rw-r--r--poky/meta/recipes-devtools/python/python3-rfc3986-validator_0.1.1.bb2
-rw-r--r--poky/meta/recipes-devtools/python/python3/python3-manifest.json11
-rw-r--r--poky/meta/recipes-devtools/python/python3_3.10.6.bb1
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu-native_7.1.0.bb (renamed from poky/meta/recipes-devtools/qemu/qemu-native_7.0.0.bb)0
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu-system-native_7.1.0.bb (renamed from poky/meta/recipes-devtools/qemu/qemu-system-native_7.0.0.bb)3
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu.inc21
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0001-net-tulip-Restrict-DMA-engine-to-memories.patch64
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch46
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2021-3507_1.patch92
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2021-3507_2.patch115
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2022-0216_1.patch42
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2022-0216_2.patch146
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2022-35414.patch53
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/arm-cpreg-fix.patch27
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/cross.patch17
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu_7.1.0.bb (renamed from poky/meta/recipes-devtools/qemu/qemu_7.0.0.bb)0
-rw-r--r--poky/meta/recipes-devtools/repo/repo_2.29.2.bb (renamed from poky/meta/recipes-devtools/repo/repo_2.29.1.bb)2
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0001-Add-a-color-setting-for-mips64_n32-binaries.patch22
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch10
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch26
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0001-Do-not-read-config-files-from-HOME.patch11
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch10
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0001-When-cross-installing-execute-package-scriptlets-wit.patch20
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0001-build-pack.c-do-not-insert-payloadflags-into-.rpm-me.patch8
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0001-configure.ac-add-linux-gnux32-variant-to-triplet-han.patch17
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0001-docs-do-not-build-manpages-requires-pandoc.patch11
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0001-lib-transaction.c-fix-file-conflicts-for-MIPS64-N32.patch13
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0001-tools-Add-error.h-for-non-glibc-case.patch71
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0002-Add-support-for-prefixing-etc-from-RPM_ETCCONFIGDIR-.patch17
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0016-rpmscript.c-change-logging-level-around-scriptlets-t.patch16
-rw-r--r--poky/meta/recipes-devtools/rpm/files/fifofix.patch22
-rw-r--r--poky/meta/recipes-devtools/rpm/rpm_4.18.0.bb (renamed from poky/meta/recipes-devtools/rpm/rpm_4.17.1.bb)7
-rw-r--r--poky/meta/recipes-devtools/rust/files/target-rust-ccld.c19
-rw-r--r--poky/meta/recipes-devtools/rust/rust-cross-canadian.inc20
-rw-r--r--poky/meta/recipes-devtools/rust/rust.inc9
-rw-r--r--poky/meta/recipes-devtools/rust/rust_1.63.0.bb4
-rw-r--r--poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb2
-rw-r--r--poky/meta/recipes-devtools/vala/vala_0.56.2.bb3
-rw-r--r--poky/meta/recipes-devtools/vala/vala_0.56.3.bb3
-rw-r--r--poky/meta/recipes-devtools/xmlto/xmlto/0001-Skip-validating-xmlto-output.patch29
-rw-r--r--poky/meta/recipes-devtools/xmlto/xmlto/configure.in-drop-the-test-of-xmllint-and-xsltproc.patch30
-rw-r--r--poky/meta/recipes-devtools/xmlto/xmlto_0.0.28.bb9
-rw-r--r--poky/meta/recipes-extended/cracklib/cracklib/0001-rules-Drop-using-register-keyword.patch278
-rw-r--r--poky/meta/recipes-extended/cracklib/cracklib/0002-rules-Correct-parameter-types-to-Debug-calls.patch40
-rw-r--r--poky/meta/recipes-extended/cracklib/cracklib_2.9.8.bb (renamed from poky/meta/recipes-extended/cracklib/cracklib_2.9.7.bb)4
-rw-r--r--poky/meta/recipes-extended/cronie/cronie_1.6.1.bb7
-rw-r--r--poky/meta/recipes-extended/cups/cups.inc7
-rw-r--r--poky/meta/recipes-extended/less/less_608.bb (renamed from poky/meta/recipes-extended/less/less_600.bb)3
-rw-r--r--poky/meta/recipes-extended/logrotate/logrotate_3.20.1.bb7
-rw-r--r--poky/meta/recipes-extended/ltp/ltp_20220527.bb4
-rw-r--r--poky/meta/recipes-extended/pam/libpam_1.3.1.bb6
-rw-r--r--poky/meta/recipes-extended/rust-example/rust-hello-world/0001-enable-LTO.patch (renamed from poky/meta/recipes-example/rust-hello-world/rust-hello-world/0001-enable-LTO.patch)0
-rw-r--r--poky/meta/recipes-extended/rust-example/rust-hello-world_git.bb (renamed from poky/meta/recipes-example/rust-hello-world/rust-hello-world_git.bb)0
-rw-r--r--poky/meta/recipes-extended/shadow/files/securetty1
-rw-r--r--poky/meta/recipes-extended/shadow/shadow.inc6
-rw-r--r--poky/meta/recipes-extended/timezone/timezone.inc6
-rw-r--r--poky/meta/recipes-extended/watchdog/watchdog_5.16.bb4
-rw-r--r--poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.72.0.bb2
-rw-r--r--poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb6
-rw-r--r--poky/meta/recipes-graphics/drm/libdrm_2.4.113.bb (renamed from poky/meta/recipes-graphics/drm/libdrm_2.4.112.bb)33
-rw-r--r--poky/meta/recipes-graphics/harfbuzz/harfbuzz_5.1.0.bb7
-rw-r--r--poky/meta/recipes-graphics/kmscube/kmscube/0001-drm-common.c-do-not-use-invalid-modifier.patch27
-rw-r--r--poky/meta/recipes-graphics/kmscube/kmscube/0001-texturator-Use-correct-GL-extension-header.patch33
-rw-r--r--poky/meta/recipes-graphics/kmscube/kmscube_git.bb7
-rw-r--r--poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.9.bb6
-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_2.24.0.bb (renamed from poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.22.bb)10
-rw-r--r--poky/meta/recipes-graphics/libva/libva.inc6
-rw-r--r--poky/meta/recipes-graphics/mesa/files/0001-Revert-egl-wayland-deprecate-drm_handle_format-and-d.patch158
-rw-r--r--poky/meta/recipes-graphics/mesa/files/0001-futex.h-Define-__NR_futex-if-it-does-not-exist.patch10
-rw-r--r--poky/meta/recipes-graphics/mesa/files/0001-meson-misdetects-64bit-atomics-on-mips-clang.patch2
-rw-r--r--poky/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch10
-rw-r--r--poky/meta/recipes-graphics/mesa/files/0001-nir-nir_opt_move-fix-ALWAYS_INLINE-compiler-error.patch20
-rw-r--r--poky/meta/recipes-graphics/mesa/files/0001-swrast_kms-use-swkmsDRI2Extension-instead-of-driDRI2.patch113
-rw-r--r--poky/meta/recipes-graphics/mesa/files/0001-util-format-Check-for-NEON-before-using-it.patch6
-rw-r--r--poky/meta/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch61
-rw-r--r--poky/meta/recipes-graphics/mesa/mesa-gl_22.2.0.bb (renamed from poky/meta/recipes-graphics/mesa/mesa-gl_22.1.6.bb)0
-rw-r--r--poky/meta/recipes-graphics/mesa/mesa.inc16
-rw-r--r--poky/meta/recipes-graphics/mesa/mesa_22.2.0.bb (renamed from poky/meta/recipes-graphics/mesa/mesa_22.1.6.bb)0
-rw-r--r--poky/meta/recipes-graphics/piglit/piglit/0004-CMakeLists.txt-add-missing-endian.h-check.patch25
-rw-r--r--poky/meta/recipes-graphics/piglit/piglit_git.bb6
-rw-r--r--poky/meta/recipes-graphics/ttf-fonts/liberation-fonts_2.1.5.bb4
-rw-r--r--poky/meta/recipes-graphics/virglrenderer/virglrenderer/0001-meson.build-use-python3-directly-for-python.patch11
-rw-r--r--poky/meta/recipes-graphics/virglrenderer/virglrenderer/cve-2022-0135.patch117
-rw-r--r--poky/meta/recipes-graphics/virglrenderer/virglrenderer/cve-2022-0175.patch107
-rw-r--r--poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.10.3.bb33
-rw-r--r--poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.9.1.bb25
-rw-r--r--poky/meta/recipes-graphics/xorg-lib/libfontenc_1.1.6.bb (renamed from poky/meta/recipes-graphics/xorg-lib/libfontenc_1.1.4.bb)5
-rw-r--r--poky/meta/recipes-graphics/xorg-lib/libxau_1.0.10.bb (renamed from poky/meta/recipes-graphics/xorg-lib/libxau_1.0.9.bb)4
-rw-r--r--poky/meta/recipes-graphics/xorg-lib/libxfont2_2.0.6.bb (renamed from poky/meta/recipes-graphics/xorg-lib/libxfont2_2.0.5.bb)3
-rw-r--r--poky/meta/recipes-graphics/xorg-lib/xorg-lib-common.inc3
-rw-r--r--poky/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb2
-rw-r--r--poky/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb16
-rw-r--r--poky/meta/recipes-kernel/linux-firmware/linux-firmware_20220913.bb (renamed from poky/meta/recipes-kernel/linux-firmware/linux-firmware_20220708.bb)26
-rw-r--r--poky/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_5.19.bb2
-rw-r--r--poky/meta/recipes-kernel/linux/linux-yocto-rt_5.15.bb6
-rw-r--r--poky/meta/recipes-kernel/linux/linux-yocto-rt_5.19.bb6
-rw-r--r--poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.15.bb6
-rw-r--r--poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.19.bb6
-rw-r--r--poky/meta/recipes-kernel/linux/linux-yocto_5.15.bb26
-rw-r--r--poky/meta/recipes-kernel/linux/linux-yocto_5.19.bb28
-rw-r--r--poky/meta/recipes-kernel/lttng/lttng-platforms.inc4
-rw-r--r--poky/meta/recipes-kernel/perf/perf.bb6
-rw-r--r--poky/meta/recipes-multimedia/ffmpeg/ffmpeg_5.1.1.bb (renamed from poky/meta/recipes-multimedia/ffmpeg/ffmpeg_5.1.bb)2
-rw-r--r--poky/meta/recipes-multimedia/flac/flac_1.4.0.bb (renamed from poky/meta/recipes-multimedia/flac/flac_1.3.4.bb)38
-rw-r--r--poky/meta/recipes-multimedia/libpng/libpng_1.6.38.bb (renamed from poky/meta/recipes-multimedia/libpng/libpng_1.6.37.bb)5
-rw-r--r--poky/meta/recipes-multimedia/libsamplerate/libsamplerate0_0.2.2.bb6
-rw-r--r--poky/meta/recipes-multimedia/libsndfile/libsndfile1_1.1.0.bb6
-rw-r--r--poky/meta/recipes-multimedia/libtiff/files/CVE-2022-2953.patch86
-rw-r--r--poky/meta/recipes-multimedia/libtiff/tiff_4.4.0.bb1
-rw-r--r--poky/meta/recipes-sato/webkit/webkitgtk/0d3344e17d258106617b0e6d783d073b188a2548.patch296
-rw-r--r--poky/meta/recipes-sato/webkit/webkitgtk/fix-gstreamer-include-paths.patch51
-rw-r--r--poky/meta/recipes-sato/webkit/webkitgtk_2.36.7.bb (renamed from poky/meta/recipes-sato/webkit/webkitgtk_2.36.6.bb)5
-rw-r--r--poky/meta/recipes-support/bash-completion/bash-completion_2.11.bb7
-rw-r--r--poky/meta/recipes-support/boost/boost.inc1
-rw-r--r--poky/meta/recipes-support/curl/curl_7.85.0.bb3
-rw-r--r--poky/meta/recipes-support/diffoscope/diffoscope_221.bb (renamed from poky/meta/recipes-support/diffoscope/diffoscope_220.bb)2
-rw-r--r--poky/meta/recipes-support/enchant/enchant2_2.3.3.bb6
-rw-r--r--poky/meta/recipes-support/fribidi/fribidi_1.0.12.bb6
-rw-r--r--poky/meta/recipes-support/icu/icu_71.1.bb10
-rw-r--r--poky/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.14.bb6
-rw-r--r--poky/meta/recipes-support/libcheck/libcheck_0.15.2.bb6
-rw-r--r--poky/meta/recipes-support/libevent/libevent_2.1.12.bb7
-rw-r--r--poky/meta/recipes-support/libexif/libexif_0.6.24.bb6
-rw-r--r--poky/meta/recipes-support/libffi/libffi_3.4.2.bb6
-rw-r--r--poky/meta/recipes-support/libgcrypt/files/no-bench-slope.patch20
-rw-r--r--poky/meta/recipes-support/libgcrypt/libgcrypt_1.10.1.bb1
-rw-r--r--poky/meta/recipes-support/libical/libical_3.0.14.bb5
-rw-r--r--poky/meta/recipes-support/libjitterentropy/libjitterentropy_3.4.1.bb (renamed from poky/meta/recipes-support/libjitterentropy/libjitterentropy_3.4.0.bb)2
-rw-r--r--poky/meta/recipes-support/libnl/libnl_3.7.0.bb8
-rw-r--r--poky/meta/recipes-support/libpcre/libpcre2_10.40.bb7
-rw-r--r--poky/meta/recipes-support/libproxy/libproxy_0.4.18.bb7
-rw-r--r--poky/meta/recipes-support/libpsl/libpsl_0.21.1.bb6
-rw-r--r--poky/meta/recipes-support/libusb/libusb1_1.0.26.bb6
-rw-r--r--poky/meta/recipes-support/nghttp2/nghttp2_1.49.0.bb (renamed from poky/meta/recipes-support/nghttp2/nghttp2_1.48.0.bb)8
-rw-r--r--poky/meta/recipes-support/numactl/numactl_git.bb6
-rw-r--r--poky/meta/recipes-support/re2c/re2c_3.0.bb6
-rw-r--r--poky/meta/recipes-support/sqlite/sqlite3_3.39.3.bb (renamed from poky/meta/recipes-support/sqlite/sqlite3_3.39.2.bb)2
-rw-r--r--poky/meta/recipes-support/taglib/taglib_1.12.bb2
-rw-r--r--poky/meta/recipes-support/vim/vim.inc4
268 files changed, 4280 insertions, 2847 deletions
diff --git a/poky/meta/classes-global/sstate.bbclass b/poky/meta/classes-global/sstate.bbclass
index cd77c58dbf..2c8e7b8cc2 100644
--- a/poky/meta/classes-global/sstate.bbclass
+++ b/poky/meta/classes-global/sstate.bbclass
@@ -784,6 +784,7 @@ def pstaging_fetch(sstatefetch, d):
uris += ['file://{0}.sig;downloadfilename={0}.sig'.format(sstatefetch)]
for srcuri in uris:
+ localdata.delVar('SRC_URI')
localdata.setVar('SRC_URI', srcuri)
try:
fetcher = bb.fetch2.Fetch([srcuri], localdata, cache=False)
diff --git a/poky/meta/classes-recipe/core-image.bbclass b/poky/meta/classes-recipe/core-image.bbclass
index 4b5f2c99c4..90d9eb9d3f 100644
--- a/poky/meta/classes-recipe/core-image.bbclass
+++ b/poky/meta/classes-recipe/core-image.bbclass
@@ -62,6 +62,10 @@ FEATURE_PACKAGES_hwcodecs = "${MACHINE_HWCODECS}"
# IMAGE_FEATURES_REPLACES_foo = 'bar1 bar2'
# Including image feature foo would replace the image features bar1 and bar2
IMAGE_FEATURES_REPLACES_ssh-server-openssh = "ssh-server-dropbear"
+# Do not install openssh complementary packages if either packagegroup-core-ssh-dropbear or dropbear
+# is installed # to avoid openssh-dropbear conflict
+# see [Yocto #14858] for more information
+PACKAGE_EXCLUDE_COMPLEMENTARY:append = "${@bb.utils.contains_any('PACKAGE_INSTALL', 'packagegroup-core-ssh-dropbear dropbear', 'openssh', '' , d)}"
# IMAGE_FEATURES_CONFLICTS_foo = 'bar1 bar2'
# An error exception would be raised if both image features foo and bar1(or bar2) are included
diff --git a/poky/meta/classes-recipe/externalsrc.bbclass b/poky/meta/classes-recipe/externalsrc.bbclass
index 51dbe9ea5a..06a9548a20 100644
--- a/poky/meta/classes-recipe/externalsrc.bbclass
+++ b/poky/meta/classes-recipe/externalsrc.bbclass
@@ -91,16 +91,18 @@ python () {
# Since configure will likely touch ${S}, ensure only we lock so one task has access at a time
d.appendVarFlag(task, "lockfiles", " ${S}/singletask.lock")
- for funcname in [task, "base_" + task, "kernel_" + task]:
+ for v in d.keys():
+ cleandirs = d.getVarFlag(v, "cleandirs", False)
+ if cleandirs:
# We do not want our source to be wiped out, ever (kernel.bbclass does this for do_clean)
- cleandirs = oe.recipeutils.split_var_value(d.getVarFlag(funcname, 'cleandirs', False) or '')
+ cleandirs = oe.recipeutils.split_var_value(cleandirs)
setvalue = False
for cleandir in cleandirs[:]:
if oe.path.is_path_parent(externalsrc, d.expand(cleandir)):
cleandirs.remove(cleandir)
setvalue = True
if setvalue:
- d.setVarFlag(funcname, 'cleandirs', ' '.join(cleandirs))
+ d.setVarFlag(v, 'cleandirs', ' '.join(cleandirs))
fetch_tasks = ['do_fetch', 'do_unpack']
# If we deltask do_patch, there's no dependency to ensure do_unpack gets run, so add one
@@ -228,15 +230,16 @@ def srctree_hash_files(d, srcdir=None):
env['GIT_INDEX_FILE'] = tmp_index.name
subprocess.check_output(['git', 'add', '-A', '.'], cwd=s_dir, env=env)
git_sha1 = subprocess.check_output(['git', 'write-tree'], cwd=s_dir, env=env).decode("utf-8")
- submodule_helper = subprocess.check_output(['git', 'submodule--helper', 'list'], cwd=s_dir, env=env).decode("utf-8")
- for line in submodule_helper.splitlines():
- module_dir = os.path.join(s_dir, line.rsplit(maxsplit=1)[1])
- if os.path.isdir(module_dir):
- proc = subprocess.Popen(['git', 'add', '-A', '.'], cwd=module_dir, env=env, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
- proc.communicate()
- proc = subprocess.Popen(['git', 'write-tree'], cwd=module_dir, env=env, stdout=subprocess.PIPE, stderr=subprocess.DEVNULL)
- stdout, _ = proc.communicate()
- git_sha1 += stdout.decode("utf-8")
+ if os.path.exists(".gitmodules"):
+ submodule_helper = subprocess.check_output(["git", "config", "--file", ".gitmodules", "--get-regexp", "path"], cwd=s_dir, env=env).decode("utf-8")
+ for line in submodule_helper.splitlines():
+ module_dir = os.path.join(s_dir, line.rsplit(maxsplit=1)[1])
+ if os.path.isdir(module_dir):
+ proc = subprocess.Popen(['git', 'add', '-A', '.'], cwd=module_dir, env=env, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
+ proc.communicate()
+ proc = subprocess.Popen(['git', 'write-tree'], cwd=module_dir, env=env, stdout=subprocess.PIPE, stderr=subprocess.DEVNULL)
+ stdout, _ = proc.communicate()
+ git_sha1 += stdout.decode("utf-8")
sha1 = hashlib.sha1(git_sha1.encode("utf-8")).hexdigest()
with open(oe_hash_file, 'w') as fobj:
fobj.write(sha1)
diff --git a/poky/meta/classes-recipe/github-releases.bbclass b/poky/meta/classes-recipe/github-releases.bbclass
new file mode 100644
index 0000000000..ed83b83731
--- /dev/null
+++ b/poky/meta/classes-recipe/github-releases.bbclass
@@ -0,0 +1,3 @@
+GITHUB_BASE_URI ?= "https://github.com/${BPN}/${BPN}/releases/"
+UPSTREAM_CHECK_URI ?= "${GITHUB_BASE_URI}"
+UPSTREAM_CHECK_REGEX ?= "releases/tag/v?(?P<pver>\d+(\.\d+)+)"
diff --git a/poky/meta/classes-recipe/gtk-icon-cache.bbclass b/poky/meta/classes-recipe/gtk-icon-cache.bbclass
index 17c7eb7a33..9ecb49916c 100644
--- a/poky/meta/classes-recipe/gtk-icon-cache.bbclass
+++ b/poky/meta/classes-recipe/gtk-icon-cache.bbclass
@@ -9,7 +9,7 @@ FILES:${PN} += "${datadir}/icons/hicolor"
GTKIC_VERSION ??= '3'
GTKPN = "${@ 'gtk4' if d.getVar('GTKIC_VERSION') == '4' else 'gtk+3' }"
-GTKIC_CMD = "${@ 'gtk-update-icon-cache-3.0.0' if d.getVar('GTKIC_VERSION') == '4' else 'gtk4-update-icon-cache' }"
+GTKIC_CMD = "${@ 'gtk4-update-icon-cache' if d.getVar('GTKIC_VERSION') == '4' else 'gtk-update-icon-cache-3.0' }"
#gtk+3/gtk4 require GTK3DISTROFEATURES, DEPENDS on it make all the
#recipes inherit this class require GTK3DISTROFEATURES
diff --git a/poky/meta/classes-recipe/kernel-module-split.bbclass b/poky/meta/classes-recipe/kernel-module-split.bbclass
index 1b4c864a63..08c2e54e86 100644
--- a/poky/meta/classes-recipe/kernel-module-split.bbclass
+++ b/poky/meta/classes-recipe/kernel-module-split.bbclass
@@ -18,7 +18,7 @@ pkg_postrm:modules () {
if [ -z "$D" ]; then
depmod -a ${KERNEL_VERSION}
else
- depmodwrapper -a -b $D ${KERNEL_VERSION}
+ depmodwrapper -a -b $D ${KERNEL_VERSION} ${KERNEL_PACKAGE_NAME}
fi
}
diff --git a/poky/meta/classes-recipe/kernel.bbclass b/poky/meta/classes-recipe/kernel.bbclass
index de1b80d0ae..e4e69e0763 100644
--- a/poky/meta/classes-recipe/kernel.bbclass
+++ b/poky/meta/classes-recipe/kernel.bbclass
@@ -677,7 +677,7 @@ pkg_postinst:${KERNEL_PACKAGE_NAME}-base () {
mkdir -p $D/lib/modules/${KERNEL_VERSION}
fi
if [ -n "$D" ]; then
- depmodwrapper -a -b $D ${KERNEL_VERSION}
+ depmodwrapper -a -b $D ${KERNEL_VERSION} ${KERNEL_PACKAGE_NAME}
else
depmod -a ${KERNEL_VERSION}
fi
diff --git a/poky/meta/classes/overlayfs-etc.bbclass b/poky/meta/classes-recipe/overlayfs-etc.bbclass
index d0bc3ecfac..f8343106f3 100644
--- a/poky/meta/classes/overlayfs-etc.bbclass
+++ b/poky/meta/classes-recipe/overlayfs-etc.bbclass
@@ -40,6 +40,7 @@ OVERLAYFS_ETC_DEVICE ??= ""
OVERLAYFS_ETC_USE_ORIG_INIT_NAME ??= "1"
OVERLAYFS_ETC_MOUNT_OPTIONS ??= "defaults"
OVERLAYFS_ETC_INIT_TEMPLATE ??= "${COREBASE}/meta/files/overlayfs-etc-preinit.sh.in"
+OVERLAYFS_ETC_EXPOSE_LOWER ??= "0"
python create_overlayfs_etc_preinit() {
overlayEtcMountPoint = d.getVar("OVERLAYFS_ETC_MOUNT_POINT")
@@ -60,13 +61,15 @@ python create_overlayfs_etc_preinit() {
preinitPath = oe.path.join(d.getVar("IMAGE_ROOTFS"), d.getVar("base_sbindir"), "preinit")
initBaseName = oe.path.join(d.getVar("base_sbindir"), "init")
origInitNameSuffix = ".orig"
+ exposeLower = oe.types.boolean(d.getVar('OVERLAYFS_ETC_EXPOSE_LOWER'))
args = {
'OVERLAYFS_ETC_MOUNT_POINT': overlayEtcMountPoint,
'OVERLAYFS_ETC_MOUNT_OPTIONS': d.getVar('OVERLAYFS_ETC_MOUNT_OPTIONS'),
'OVERLAYFS_ETC_FSTYPE': overlayEtcFsType,
'OVERLAYFS_ETC_DEVICE': overlayEtcDevice,
- 'SBIN_INIT_NAME': initBaseName + origInitNameSuffix if useOrigInit else initBaseName
+ 'SBIN_INIT_NAME': initBaseName + origInitNameSuffix if useOrigInit else initBaseName,
+ 'OVERLAYFS_ETC_EXPOSE_LOWER': "true" if exposeLower else "false"
}
if useOrigInit:
diff --git a/poky/meta/classes/overlayfs.bbclass b/poky/meta/classes-recipe/overlayfs.bbclass
index bdc6dd9d57..bdc6dd9d57 100644
--- a/poky/meta/classes/overlayfs.bbclass
+++ b/poky/meta/classes-recipe/overlayfs.bbclass
diff --git a/poky/meta/classes-recipe/rootfs-postcommands.bbclass b/poky/meta/classes-recipe/rootfs-postcommands.bbclass
index 215e38e33d..690fa976aa 100644
--- a/poky/meta/classes-recipe/rootfs-postcommands.bbclass
+++ b/poky/meta/classes-recipe/rootfs-postcommands.bbclass
@@ -22,7 +22,7 @@ ROOTFS_POSTPROCESS_COMMAND += '${@bb.utils.contains_any("IMAGE_FEATURES", [ 'deb
# Create /etc/timestamp during image construction to give a reasonably sane default time setting
ROOTFS_POSTPROCESS_COMMAND += "rootfs_update_timestamp; "
-# Tweak the mount options for rootfs in /etc/fstab if read-only-rootfs is enabled
+# Tweak files in /etc if read-only-rootfs is enabled
ROOTFS_POSTPROCESS_COMMAND += '${@bb.utils.contains("IMAGE_FEATURES", "read-only-rootfs", "read_only_rootfs_hook; ", "",d)}'
# We also need to do the same for the kernel boot parameters,
@@ -111,20 +111,24 @@ read_only_rootfs_hook () {
# If we're using openssh and the /etc/ssh directory has no pre-generated keys,
# we should configure openssh to use the configuration file /etc/ssh/sshd_config_readonly
# and the keys under /var/run/ssh.
- if [ -d ${IMAGE_ROOTFS}/etc/ssh ]; then
- if [ -e ${IMAGE_ROOTFS}/etc/ssh/ssh_host_rsa_key ]; then
- echo "SYSCONFDIR=\${SYSCONFDIR:-/etc/ssh}" >> ${IMAGE_ROOTFS}/etc/default/ssh
- echo "SSHD_OPTS=" >> ${IMAGE_ROOTFS}/etc/default/ssh
- else
- echo "SYSCONFDIR=\${SYSCONFDIR:-/var/run/ssh}" >> ${IMAGE_ROOTFS}/etc/default/ssh
- echo "SSHD_OPTS='-f /etc/ssh/sshd_config_readonly'" >> ${IMAGE_ROOTFS}/etc/default/ssh
+ # If overlayfs-etc is used this is not done as /etc is treated as writable
+ # If stateless-rootfs is enabled this is always done as we don't want to save keys then
+ if ${@ 'true' if not bb.utils.contains('IMAGE_FEATURES', 'overlayfs-etc', True, False, d) or bb.utils.contains('IMAGE_FEATURES', 'stateless-rootfs', True, False, d) else 'false'}; then
+ if [ -d ${IMAGE_ROOTFS}/etc/ssh ]; then
+ if [ -e ${IMAGE_ROOTFS}/etc/ssh/ssh_host_rsa_key ]; then
+ echo "SYSCONFDIR=\${SYSCONFDIR:-/etc/ssh}" >> ${IMAGE_ROOTFS}/etc/default/ssh
+ echo "SSHD_OPTS=" >> ${IMAGE_ROOTFS}/etc/default/ssh
+ else
+ echo "SYSCONFDIR=\${SYSCONFDIR:-/var/run/ssh}" >> ${IMAGE_ROOTFS}/etc/default/ssh
+ echo "SSHD_OPTS='-f /etc/ssh/sshd_config_readonly'" >> ${IMAGE_ROOTFS}/etc/default/ssh
+ fi
fi
- fi
- # Also tweak the key location for dropbear in the same way.
- if [ -d ${IMAGE_ROOTFS}/etc/dropbear ]; then
- if [ ! -e ${IMAGE_ROOTFS}/etc/dropbear/dropbear_rsa_host_key ]; then
- echo "DROPBEAR_RSAKEY_DIR=/var/lib/dropbear" >> ${IMAGE_ROOTFS}/etc/default/dropbear
+ # Also tweak the key location for dropbear in the same way.
+ if [ -d ${IMAGE_ROOTFS}/etc/dropbear ]; then
+ if [ ! -e ${IMAGE_ROOTFS}/etc/dropbear/dropbear_rsa_host_key ]; then
+ echo "DROPBEAR_RSAKEY_DIR=/var/lib/dropbear" >> ${IMAGE_ROOTFS}/etc/default/dropbear
+ fi
fi
fi
@@ -200,6 +204,7 @@ ssh_allow_root_login () {
if [ -e ${IMAGE_ROOTFS}${sbindir}/dropbear ] ; then
if grep -q DROPBEAR_EXTRA_ARGS ${IMAGE_ROOTFS}${sysconfdir}/default/dropbear 2>/dev/null ; then
sed -i '/^DROPBEAR_EXTRA_ARGS=/ s/-w//' ${IMAGE_ROOTFS}${sysconfdir}/default/dropbear
+ sed -i '/^# Disallow root/d' ${IMAGE_ROOTFS}${sysconfdir}/default/dropbear
fi
fi
}
diff --git a/poky/meta/classes-recipe/testimage.bbclass b/poky/meta/classes-recipe/testimage.bbclass
index 8d2fab21df..5cc408b0c4 100644
--- a/poky/meta/classes-recipe/testimage.bbclass
+++ b/poky/meta/classes-recipe/testimage.bbclass
@@ -189,11 +189,7 @@ def get_testimage_boot_patterns(d):
search_login_succeeded,search_cmd_finished\n Make sure your TESTIMAGE_BOOT_PATTERNS=%s \
contains an accepted flag.' % d.getVar('TESTIMAGE_BOOT_PATTERNS'))
return
- # We know boot prompt is searched through in binary format, others might be expressions
- if flag == 'search_reached_prompt':
- boot_patterns[flag] = flagval.encode()
- else:
- boot_patterns[flag] = flagval.encode().decode('unicode-escape')
+ boot_patterns[flag] = flagval.encode().decode('unicode-escape')
return boot_patterns
@@ -472,10 +468,7 @@ def create_rpm_index(d):
package_list = glob.glob(idx_path + "*/*.rpm")
for pkg in package_list:
- if os.path.basename(pkg).startswith(("curl-ptest")):
- bb.utils.remove(pkg)
-
- if not os.path.basename(pkg).startswith(("rpm", "run-postinsts", "busybox", "bash", "update-alternatives", "libc6", "curl", "musl")):
+ if not os.path.basename(pkg).startswith(("dnf-test-", "busybox", "update-alternatives", "libc6", "musl")):
bb.utils.remove(pkg)
bb.utils.unlockfile(lf)
diff --git a/poky/meta/classes/icecc.bbclass b/poky/meta/classes/icecc.bbclass
index a11e781f00..312e0f17b5 100644
--- a/poky/meta/classes/icecc.bbclass
+++ b/poky/meta/classes/icecc.bbclass
@@ -4,35 +4,35 @@
# SPDX-License-Identifier: MIT
#
-# IceCream distributed compiling support
+# Icecream distributed compiling support
#
# Stages directories with symlinks from gcc/g++ to icecc, for both
# native and cross compilers. Depending on each configure or compile,
# the directories are added at the head of the PATH list and ICECC_CXX
-# and ICEC_CC are set.
+# and ICECC_CC are set.
#
# For the cross compiler, creates a tar.gz of our toolchain and sets
# ICECC_VERSION accordingly.
#
# The class now handles all 3 different compile 'stages' (i.e native ,cross-kernel and target) creating the
# necessary environment tar.gz file to be used by the remote machines.
-# It also supports meta-toolchain generation
+# It also supports meta-toolchain generation.
#
# If ICECC_PATH is not set in local.conf then the class will try to locate it using 'bb.utils.which'
-# but nothing is sure ;)
+# but nothing is sure. ;)
#
# If ICECC_ENV_EXEC is set in local.conf, then it should point to the icecc-create-env script provided by the user
-# or the default one provided by icecc-create-env.bb will be used
-# (NOTE that this is a modified version of the script need it and *not the one that comes with icecc*
+# or the default one provided by icecc-create-env_0.1.bb will be used.
+# (NOTE that this is a modified version of the needed script and *not the one that comes with icecream*).
#
-# User can specify if specific recipes or recipes belonging to class should not use icecc to distribute
-# compile jobs to remote machines, but handled locally, by defining ICECC_CLASS_DISABLE and ICECC_RECIPE_DISABLE
+# User can specify if specific recipes or recipes inheriting specific classes should not use icecc to distribute
+# compile jobs to remote machines, but handle them locally by defining ICECC_CLASS_DISABLE and ICECC_RECIPE_DISABLE
# with the appropriate values in local.conf. In addition the user can force to enable icecc for recipes
# which set an empty PARALLEL_MAKE variable by defining ICECC_RECIPE_ENABLE.
#
#########################################################################################
-#Error checking is kept to minimum so double check any parameters you pass to the class
-###########################################################################################
+# Error checking is kept to minimum so double check any parameters you pass to the class
+#########################################################################################
BB_BASEHASH_IGNORE_VARS += "ICECC_PARALLEL_MAKE ICECC_DISABLED ICECC_RECIPE_DISABLE \
ICECC_CLASS_DISABLE ICECC_RECIPE_ENABLE ICECC_PATH ICECC_ENV_EXEC \
@@ -50,7 +50,7 @@ HOSTTOOLS_NONFATAL += "icecc patchelf"
# invalidate the version on the compile nodes. Changing it will cause a new
# environment to be created.
#
-# A useful thing to do for testing Icecream changes locally is to add a
+# A useful thing to do for testing icecream changes locally is to add a
# subversion in local.conf:
# ICECC_ENV_VERSION:append = "-my-ver-1"
ICECC_ENV_VERSION = "2"
@@ -72,16 +72,16 @@ CXXFLAGS += "${ICECC_CFLAGS}"
ICECC_ENV_DEBUG ??= ""
# Disable recipe list contains a list of recipes that can not distribute
-# compile tasks for one reason or the other. When adding new entry, please
+# compile tasks for one reason or the other. When adding a new entry, please
# document why (how it failed) so that we can re-evaluate it later e.g. when
-# there is new version
+# there is a new version.
#
# libgcc-initial - fails with CPP sanity check error if host sysroot contains
-# cross gcc built for another target tune/variant
+# cross gcc built for another target tune/variant.
# pixman - prng_state: TLS reference mismatches non-TLS reference, possibly due to
-# pragma omp threadprivate(prng_state)
+# pragma omp threadprivate(prng_state).
# systemtap - _HelperSDT.c undefs macros and uses the identifiers in macros emitting
-# inline assembly
+# inline assembly.
# target-sdk-provides-dummy - ${HOST_PREFIX} is empty which triggers the "NULL
# prefix" error.
ICECC_RECIPE_DISABLE += "\
@@ -91,10 +91,10 @@ ICECC_RECIPE_DISABLE += "\
target-sdk-provides-dummy \
"
-# Classes that should not use icecc. When adding new entry, please
-# document why (how it failed) so that we can re-evaluate it later
+# Classes that should not use icecc. When adding a new entry, please
+# document why (how it failed) so that we can re-evaluate it later.
#
-# image - Image aren't compiling, but the testing framework for images captures
+# image - images aren't compiling, but the testing framework for images captures
# PARALLEL_MAKE as part of the test environment. Many tests won't use
# icecream, but leaving the high level of parallelism can cause them to
# consume an unnecessary amount of resources.
@@ -103,7 +103,7 @@ ICECC_CLASS_DISABLE += "\
"
def get_icecc_dep(d):
- # INHIBIT_DEFAULT_DEPS doesn't apply to the patch command. Whether or not
+ # INHIBIT_DEFAULT_DEPS doesn't apply to the patch command. Whether or not
# we need that built is the responsibility of the patch function / class, not
# the application.
if not d.getVar('INHIBIT_DEFAULT_DEPS'):
@@ -259,7 +259,7 @@ def icecc_get_tool_link(tool, d):
def icecc_get_path_tool(tool, d):
# This is a little ugly, but we want to make sure we add an actual
# compiler to the toolchain, not ccache. Some distros (e.g. Fedora)
- # have ccache enabled by default using symlinks PATH, meaning ccache
+ # have ccache enabled by default using symlinks in PATH, meaning ccache
# would be found first when looking for the compiler.
paths = os.getenv("PATH").split(':')
while True:
@@ -380,7 +380,6 @@ set_icecc_env() {
fi
for compiler in $compilers; do
ln -sf $ICECC_BIN $ICE_PATH/symlinks/$compiler
- rm -f $ICE_PATH/$compiler
cat <<-__EOF__ > $ICE_PATH/$compiler
#!/bin/sh -e
export ICECC_VERSION=$ICECC_VERSION
@@ -449,11 +448,11 @@ do_install:prepend() {
set_icecc_env
}
-# IceCream is not (currently) supported in the extensible SDK
+# Icecream is not (currently) supported in the extensible SDK
ICECC_SDK_HOST_TASK = "nativesdk-icecc-toolchain"
ICECC_SDK_HOST_TASK:task-populate-sdk-ext = ""
-# Don't include IceCream in uninative tarball
+# Don't include icecream in uninative tarball
ICECC_SDK_HOST_TASK:pn-uninative-tarball = ""
# Add the toolchain scripts to the SDK
diff --git a/poky/meta/conf/bitbake.conf b/poky/meta/conf/bitbake.conf
index 52a36d788b..62cdd9aa9c 100644
--- a/poky/meta/conf/bitbake.conf
+++ b/poky/meta/conf/bitbake.conf
@@ -389,6 +389,7 @@ FILESYSTEM_PERMS_TABLES ?= "${@'files/fs-perms.txt' if oe.types.boolean(d.getVar
TCMODE ??= "default"
TCLIBC ??= "glibc"
+TC_CXX_RUNTIME ??= "gnu"
TMPDIR ?= "${TOPDIR}/tmp"
CACHE = "${TMPDIR}/cache/${TCMODE}-${TCLIBC}${@['', '/' + str(d.getVar('MACHINE'))][bool(d.getVar('MACHINE'))]}${@['', '/' + str(d.getVar('SDKMACHINE'))][bool(d.getVar('SDKMACHINE'))]}"
diff --git a/poky/meta/conf/distro/include/maintainers.inc b/poky/meta/conf/distro/include/maintainers.inc
index 3c80a3a617..fee4e52b10 100644
--- a/poky/meta/conf/distro/include/maintainers.inc
+++ b/poky/meta/conf/distro/include/maintainers.inc
@@ -626,6 +626,7 @@ RECIPE_MAINTAINER:pn-python3-jinja2 = "Richard Purdie <richard.purdie@linuxfound
RECIPE_MAINTAINER:pn-python3-jsonpointer = "Bruce Ashfield <bruce.ashfield@gmail.com>"
RECIPE_MAINTAINER:pn-python3-jsonschema = "Bruce Ashfield <bruce.ashfield@gmail.com>"
RECIPE_MAINTAINER:pn-python3-libarchive-c = "Joshua Watt <JPEWhacker@gmail.com>"
+RECIPE_MAINTAINER:pn-python3-lxml = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER:pn-python3-magic = "Joshua Watt <JPEWhacker@gmail.com>"
RECIPE_MAINTAINER:pn-python3-mako = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
RECIPE_MAINTAINER:pn-python3-markdown = "Alexander Kanavin <alex.kanavin@gmail.com>"
diff --git a/poky/meta/conf/distro/include/tcmode-default.inc b/poky/meta/conf/distro/include/tcmode-default.inc
index 9abd121e3a..59b226e62f 100644
--- a/poky/meta/conf/distro/include/tcmode-default.inc
+++ b/poky/meta/conf/distro/include/tcmode-default.inc
@@ -22,7 +22,7 @@ BINUVERSION ?= "2.39%"
GDBVERSION ?= "12.%"
GLIBCVERSION ?= "2.36"
LINUXLIBCVERSION ?= "5.19%"
-QEMUVERSION ?= "7.0%"
+QEMUVERSION ?= "7.1%"
GOVERSION ?= "1.19%"
# 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
diff --git a/poky/meta/conf/layer.conf b/poky/meta/conf/layer.conf
index 1387539734..0ce90355ba 100644
--- a/poky/meta/conf/layer.conf
+++ b/poky/meta/conf/layer.conf
@@ -7,7 +7,7 @@ BBFILE_COLLECTIONS += "core"
BBFILE_PATTERN_core = "^${LAYERDIR}/"
BBFILE_PRIORITY_core = "5"
-LAYERSERIES_CORENAMES = "kirkstone langdale"
+LAYERSERIES_CORENAMES = "langdale"
# This should only be incremented on significant changes that will
# cause compatibility issues with other layers
diff --git a/poky/meta/conf/machine/include/arm/arch-armv9a.inc b/poky/meta/conf/machine/include/arm/arch-armv9a.inc
new file mode 100644
index 0000000000..c38d6cfdf6
--- /dev/null
+++ b/poky/meta/conf/machine/include/arm/arch-armv9a.inc
@@ -0,0 +1,28 @@
+DEFAULTTUNE ?= "armv9a-crc"
+
+TUNEVALID[armv9a] = "Enable instructions for ARMv9-a"
+TUNE_CCARGS_MARCH .= "${@bb.utils.contains('TUNE_FEATURES', 'armv9a', ' -march=armv9-a', '', d)}"
+MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'armv9a', 'armv9a:', '', d)}"
+
+require conf/machine/include/arm/arch-arm64.inc
+require conf/machine/include/arm/feature-arm-crc.inc
+require conf/machine/include/arm/feature-arm-crypto.inc
+
+# Little Endian base configs
+AVAILTUNES += "armv9a armv9a-crc armv9a-crc-crypto armv9a-crypto"
+ARMPKGARCH:tune-armv9a ?= "armv9a"
+ARMPKGARCH:tune-armv9a-crc ?= "armv9a"
+ARMPKGARCH:tune-armv9a-crypto ?= "armv9a"
+ARMPKGARCH:tune-armv9a-crc-crypto ?= "armv9a"
+TUNE_FEATURES:tune-armv9a = "aarch64 armv9a"
+TUNE_FEATURES:tune-armv9a-crc = "${TUNE_FEATURES:tune-armv9a} crc"
+TUNE_FEATURES:tune-armv9a-crypto = "${TUNE_FEATURES:tune-armv9a} crypto"
+TUNE_FEATURES:tune-armv9a-crc-crypto = "${TUNE_FEATURES:tune-armv9a-crc} crypto"
+PACKAGE_EXTRA_ARCHS:tune-armv9a = "aarch64 armv9a"
+PACKAGE_EXTRA_ARCHS:tune-armv9a-crc = "${PACKAGE_EXTRA_ARCHS:tune-armv9a} armv9a-crc"
+PACKAGE_EXTRA_ARCHS:tune-armv9a-crypto = "${PACKAGE_EXTRA_ARCHS:tune-armv9a} armv9a-crypto"
+PACKAGE_EXTRA_ARCHS:tune-armv9a-crc-crypto = "${PACKAGE_EXTRA_ARCHS:tune-armv9a-crc} armv9a-crypto armv9a-crc-crypto"
+BASE_LIB:tune-armv9a = "lib64"
+BASE_LIB:tune-armv9a-crc = "lib64"
+BASE_LIB:tune-armv9a-crypto = "lib64"
+BASE_LIB:tune-armv9a-crc-crypto = "lib64"
diff --git a/poky/meta/conf/machine/include/arm/armv9a/tune-neoversen2.inc b/poky/meta/conf/machine/include/arm/armv9a/tune-neoversen2.inc
index 36355f7bed..d26ab25e48 100644
--- a/poky/meta/conf/machine/include/arm/armv9a/tune-neoversen2.inc
+++ b/poky/meta/conf/machine/include/arm/armv9a/tune-neoversen2.inc
@@ -6,17 +6,15 @@ DEFAULTTUNE ?= "neoversen2"
TUNEVALID[neoversen2] = "Enable Neoverse-N2 specific processor optimizations"
TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'neoversen2', ' -mcpu=neoverse-n2', '', d)}"
-# Even though the Neoverse N2 core implemnts the Arm v9.0-A architecture,
-# but the support of it in GCC is based on the Arm v8.5-A architecture.
-require conf/machine/include/arm/arch-armv8-5a.inc
+require conf/machine/include/arm/arch-armv9a.inc
# Little Endian base configs
AVAILTUNES += "neoversen2 neoversen2-crypto"
ARMPKGARCH:tune-neoversen2 = "neoversen2"
ARMPKGARCH:tune-neoversen2-crypto = "neoversen2-crypto"
-TUNE_FEATURES:tune-neoversen2 = "${TUNE_FEATURES:tune-armv8-5a} neoversen2"
+TUNE_FEATURES:tune-neoversen2 = "${TUNE_FEATURES:tune-armv9a} neoversen2"
TUNE_FEATURES:tune-neoversen2-crypto = "${TUNE_FEATURES:tune-neoversen2} crypto"
-PACKAGE_EXTRA_ARCHS:tune-neoversen2 = "${PACKAGE_EXTRA_ARCHS:tune-armv8-5a} neoversen2"
-PACKAGE_EXTRA_ARCHS:tune-neoversen2-crypto = "${PACKAGE_EXTRA_ARCHS:tune-armv8-5a-crypto} neoversen2 neoversen2-crypto"
+PACKAGE_EXTRA_ARCHS:tune-neoversen2 = "${PACKAGE_EXTRA_ARCHS:tune-armv9a} neoversen2"
+PACKAGE_EXTRA_ARCHS:tune-neoversen2-crypto = "${PACKAGE_EXTRA_ARCHS:tune-armv9a-crypto} neoversen2 neoversen2-crypto"
BASE_LIB:tune-neoversen2 = "lib64"
BASE_LIB:tune-neoversen2-crypto = "lib64"
diff --git a/poky/meta/files/overlayfs-etc-preinit.sh.in b/poky/meta/files/overlayfs-etc-preinit.sh.in
index 43c9b04eb9..8db076f4ba 100644
--- a/poky/meta/files/overlayfs-etc-preinit.sh.in
+++ b/poky/meta/files/overlayfs-etc-preinit.sh.in
@@ -15,19 +15,32 @@ mount -t sysfs sysfs /sys
[ -z "$CONSOLE" ] && CONSOLE="/dev/console"
+BASE_OVERLAY_ETC_DIR={OVERLAYFS_ETC_MOUNT_POINT}/overlay-etc
+UPPER_DIR=$BASE_OVERLAY_ETC_DIR/upper
+WORK_DIR=$BASE_OVERLAY_ETC_DIR/work
+LOWER_DIR=$BASE_OVERLAY_ETC_DIR/lower
+
mkdir -p {OVERLAYFS_ETC_MOUNT_POINT}
if mount -n -t {OVERLAYFS_ETC_FSTYPE} \
-o {OVERLAYFS_ETC_MOUNT_OPTIONS} \
{OVERLAYFS_ETC_DEVICE} {OVERLAYFS_ETC_MOUNT_POINT}
then
- mkdir -p {OVERLAYFS_ETC_MOUNT_POINT}/overlay-etc/upper
- mkdir -p {OVERLAYFS_ETC_MOUNT_POINT}/overlay-etc/work
+ mkdir -p $UPPER_DIR
+ mkdir -p $WORK_DIR
+
+ if {OVERLAYFS_ETC_EXPOSE_LOWER}; then
+ mkdir -p $LOWER_DIR
+
+ # provide read-only access to original /etc content
+ mount -o bind,ro /etc $LOWER_DIR
+ fi
+
mount -n -t overlay \
- -o upperdir={OVERLAYFS_ETC_MOUNT_POINT}/overlay-etc/upper \
+ -o upperdir=$UPPER_DIR \
-o lowerdir=/etc \
- -o workdir={OVERLAYFS_ETC_MOUNT_POINT}/overlay-etc/work \
+ -o workdir=$WORK_DIR \
-o index=off,xino=off,redirect_dir=off,metacopy=off \
- {OVERLAYFS_ETC_MOUNT_POINT}/overlay-etc/upper /etc || \
+ $UPPER_DIR /etc || \
echo "PREINIT: Mounting etc-overlay failed!"
else
echo "PREINIT: Mounting </data> failed!"
diff --git a/poky/meta/lib/oe/rootfs.py b/poky/meta/lib/oe/rootfs.py
index 0b9911e3a6..890ba5f039 100644
--- a/poky/meta/lib/oe/rootfs.py
+++ b/poky/meta/lib/oe/rootfs.py
@@ -173,14 +173,8 @@ class Rootfs(object, metaclass=ABCMeta):
bb.utils.rename(self.image_rootfs + '-orig', self.image_rootfs)
def _exec_shell_cmd(self, cmd):
- fakerootcmd = self.d.getVar('FAKEROOT')
- if fakerootcmd is not None:
- exec_cmd = [fakerootcmd, cmd]
- else:
- exec_cmd = cmd
-
try:
- subprocess.check_output(exec_cmd, stderr=subprocess.STDOUT)
+ subprocess.check_output(cmd, stderr=subprocess.STDOUT)
except subprocess.CalledProcessError as e:
return("Command '%s' returned %d:\n%s" % (e.cmd, e.returncode, e.output))
@@ -325,19 +319,29 @@ class Rootfs(object, metaclass=ABCMeta):
bb.note("No Kernel Modules found, not running depmod")
return
- kernel_abi_ver_file = oe.path.join(self.d.getVar('PKGDATA_DIR'), "kernel-depmod",
- 'kernel-abiversion')
- if not os.path.exists(kernel_abi_ver_file):
- bb.fatal("No kernel-abiversion file found (%s), cannot run depmod, aborting" % kernel_abi_ver_file)
+ pkgdatadir = self.d.getVar('PKGDATA_DIR')
+
+ # PKGDATA_DIR can include multiple kernels so we run depmod for each
+ # one of them.
+ for direntry in os.listdir(pkgdatadir):
+ match = re.match('(.*)-depmod', direntry)
+ if not match:
+ continue
+ kernel_package_name = match.group(1)
+
+ kernel_abi_ver_file = oe.path.join(pkgdatadir, direntry, kernel_package_name + '-abiversion')
+ if not os.path.exists(kernel_abi_ver_file):
+ bb.fatal("No kernel-abiversion file found (%s), cannot run depmod, aborting" % kernel_abi_ver_file)
- with open(kernel_abi_ver_file) as f:
- kernel_ver = f.read().strip(' \n')
+ with open(kernel_abi_ver_file) as f:
+ kernel_ver = f.read().strip(' \n')
- versioned_modules_dir = os.path.join(self.image_rootfs, modules_dir, kernel_ver)
+ versioned_modules_dir = os.path.join(self.image_rootfs, modules_dir, kernel_ver)
- bb.utils.mkdirhier(versioned_modules_dir)
+ bb.utils.mkdirhier(versioned_modules_dir)
- self._exec_shell_cmd(['depmodwrapper', '-a', '-b', self.image_rootfs, kernel_ver])
+ bb.note("Running depmodwrapper for %s ..." % versioned_modules_dir)
+ self._exec_shell_cmd(['depmodwrapper', '-a', '-b', self.image_rootfs, kernel_ver, kernel_package_name])
"""
Create devfs:
@@ -386,6 +390,10 @@ def create_rootfs(d, manifest_dir=None, progress_reporter=None, logcatcher=None)
def image_list_installed_packages(d, rootfs_dir=None):
+ # Theres no rootfs for baremetal images
+ if bb.data.inherits_class('baremetal-image', d):
+ return ""
+
if not rootfs_dir:
rootfs_dir = d.getVar('IMAGE_ROOTFS')
diff --git a/poky/meta/lib/oeqa/oetest.py b/poky/meta/lib/oeqa/oetest.py
index 9c84466dd0..cf417db0d4 100644
--- a/poky/meta/lib/oeqa/oetest.py
+++ b/poky/meta/lib/oeqa/oetest.py
@@ -28,7 +28,7 @@ try:
import oeqa.sdkext
except ImportError:
pass
-from oeqa.utils.decorators import LogResults, gettag, getResults
+from oeqa.utils.decorators import LogResults, gettag
logger = logging.getLogger("BitBake")
@@ -57,7 +57,6 @@ def filterByTagExp(testsuite, tagexp):
@LogResults
class oeTest(unittest.TestCase):
- pscmd = "ps"
longMessage = True
@classmethod
@@ -110,20 +109,6 @@ class oeRuntimeTest(oeTest):
def tearDown(self):
# Uninstall packages in the DUT
self.tc.install_uninstall_packages(self.id(), False)
-
- res = getResults()
- # If a test fails or there is an exception dump
- # for QemuTarget only
- if (type(self.target).__name__ == "QemuTarget" and
- (self.id() in res.getErrorList() or
- self.id() in res.getFailList())):
- self.tc.host_dumper.create_dir(self._testMethodName)
- self.tc.host_dumper.dump_host()
- self.target.target_dumper.dump_target(
- self.tc.host_dumper.dump_dir)
- print ("%s dump data stored in %s" % (self._testMethodName,
- self.tc.host_dumper.dump_dir))
-
self.tearDownLocal()
# Method to be run after tearDown and implemented by child classes
@@ -398,11 +383,6 @@ class RuntimeTestContext(TestContext):
def _get_test_suites_required(self):
return [t for t in self.d.getVar("TEST_SUITES").split() if t != "auto"]
- def loadTests(self):
- super(RuntimeTestContext, self).loadTests()
- if oeTest.hasPackage("procps"):
- oeRuntimeTest.pscmd = "ps -ef"
-
def extract_packages(self):
"""
Find packages that will be needed during runtime.
diff --git a/poky/meta/lib/oeqa/runtime/cases/dnf.py b/poky/meta/lib/oeqa/runtime/cases/dnf.py
index a8e23e596e..410d456bdf 100644
--- a/poky/meta/lib/oeqa/runtime/cases/dnf.py
+++ b/poky/meta/lib/oeqa/runtime/cases/dnf.py
@@ -75,48 +75,43 @@ class DnfRepoTest(DnfTest):
def test_dnf_makecache(self):
self.dnf_with_repo('makecache')
-
-# Does not work when repo is specified on the command line
-# @OETestDepends(['dnf.DnfRepoTest.test_dnf_makecache'])
-# def test_dnf_repolist(self):
-# self.dnf_with_repo('repolist')
-
@OETestDepends(['dnf.DnfRepoTest.test_dnf_makecache'])
def test_dnf_repoinfo(self):
self.dnf_with_repo('repoinfo')
@OETestDepends(['dnf.DnfRepoTest.test_dnf_makecache'])
def test_dnf_install(self):
- output = self.dnf_with_repo('list run-postinsts-dev')
- if 'Installed Packages' in output:
- self.dnf_with_repo('remove -y run-postinsts-dev')
- self.dnf_with_repo('install -y run-postinsts-dev')
+ self.dnf_with_repo('remove -y dnf-test-*')
+ self.dnf_with_repo('install -y dnf-test-dep')
@OETestDepends(['dnf.DnfRepoTest.test_dnf_install'])
def test_dnf_install_dependency(self):
- self.dnf_with_repo('remove -y run-postinsts')
- self.dnf_with_repo('install -y run-postinsts-dev')
+ self.dnf_with_repo('remove -y dnf-test-*')
+ self.dnf_with_repo('install -y dnf-test-main')
+ output = self.dnf('list --installed dnf-test-*')
+ self.assertIn("dnf-test-main.", output)
+ self.assertIn("dnf-test-dep.", output)
@OETestDepends(['dnf.DnfRepoTest.test_dnf_install_dependency'])
def test_dnf_install_from_disk(self):
- self.dnf_with_repo('remove -y run-postinsts-dev')
- self.dnf_with_repo('install -y --downloadonly run-postinsts-dev')
- status, output = self.target.run('find /var/cache/dnf -name run-postinsts-dev*rpm', 1500)
+ self.dnf_with_repo('remove -y dnf-test-dep')
+ self.dnf_with_repo('install -y --downloadonly dnf-test-dep')
+ status, output = self.target.run('find /var/cache/dnf -name dnf-test-dep*rpm')
self.assertEqual(status, 0, output)
self.dnf_with_repo('install -y %s' % output)
@OETestDepends(['dnf.DnfRepoTest.test_dnf_install_from_disk'])
def test_dnf_install_from_http(self):
- output = subprocess.check_output('%s %s -name run-postinsts-dev*' % (bb.utils.which(os.getenv('PATH'), "find"),
+ output = subprocess.check_output('%s %s -name dnf-test-dep*' % (bb.utils.which(os.getenv('PATH'), "find"),
os.path.join(self.tc.td['WORKDIR'], 'oe-testimage-repo')), shell=True).decode("utf-8")
rpm_path = output.split("/")[-2] + "/" + output.split("/")[-1]
url = 'http://%s:%s/%s' %(self.target.server_ip, self.repo_server.port, rpm_path)
- self.dnf_with_repo('remove -y run-postinsts-dev')
+ self.dnf_with_repo('remove -y dnf-test-dep')
self.dnf_with_repo('install -y %s' % url)
@OETestDepends(['dnf.DnfRepoTest.test_dnf_install'])
def test_dnf_reinstall(self):
- self.dnf_with_repo('reinstall -y run-postinsts-dev')
+ self.dnf_with_repo('reinstall -y dnf-test-main')
@OETestDepends(['dnf.DnfRepoTest.test_dnf_makecache'])
@skipIfInDataVar('DISTRO_FEATURES', 'usrmerge', 'Test run when not enable usrmerge')
@@ -139,14 +134,14 @@ class DnfRepoTest(DnfTest):
self.target.run('cp -r /etc/dnf %s/etc' % rootpath, 1500)
self.target.run('cp /bin/sh %s/bin' % rootpath, 1500)
self.target.run('mount -o bind /dev %s/dev/' % rootpath, 1500)
- self.dnf_with_repo('install --installroot=%s -v -y --rpmverbosity=debug busybox run-postinsts' % rootpath)
+ self.dnf_with_repo('install --installroot=%s -v -y --rpmverbosity=debug busybox' % rootpath)
status, output = self.target.run('test -e %s/var/cache/dnf' % rootpath, 1500)
self.assertEqual(0, status, output)
status, output = self.target.run('test -e %s/bin/busybox' % rootpath, 1500)
self.assertEqual(0, status, output)
@OETestDepends(['dnf.DnfRepoTest.test_dnf_makecache'])
- @skipIfNotInDataVar('DISTRO_FEATURES', 'usrmerge', 'Test run when enable usrmege')
+ @skipIfNotInDataVar('DISTRO_FEATURES', 'usrmerge', 'Test run when enable usrmerge')
@OEHasPackage('busybox')
def test_dnf_installroot_usrmerge(self):
rootpath = '/home/root/chroot/test'
@@ -171,7 +166,7 @@ class DnfRepoTest(DnfTest):
self.target.run('cp -r /etc/dnf %s/etc' % rootpath, 1500)
self.target.run('cp /bin/sh %s/bin' % rootpath, 1500)
self.target.run('mount -o bind /dev %s/dev/' % rootpath, 1500)
- self.dnf_with_repo('install --installroot=%s -v -y --rpmverbosity=debug busybox run-postinsts' % rootpath)
+ self.dnf_with_repo('install --installroot=%s -v -y --rpmverbosity=debug busybox' % rootpath)
status, output = self.target.run('test -e %s/var/cache/dnf' % rootpath, 1500)
self.assertEqual(0, status, output)
status, output = self.target.run('test -e %s/bin/busybox' % rootpath, 1500)
@@ -179,15 +174,8 @@ class DnfRepoTest(DnfTest):
@OETestDepends(['dnf.DnfRepoTest.test_dnf_makecache'])
def test_dnf_exclude(self):
- excludepkg = 'curl-dev'
- self.dnf_with_repo('install -y curl*')
- self.dnf('list %s' % excludepkg, 0)
- #Avoid remove dependencies to skip some errors on different archs and images
- self.dnf_with_repo('remove --setopt=clean_requirements_on_remove=0 -y curl*')
- #check curl-dev is not installed adter removing all curl occurrences
- status, output = self.target.run('dnf list --installed | grep %s'% excludepkg, 1500)
- self.assertEqual(1, status, "%s was not removed, is listed as installed"%excludepkg)
- self.dnf_with_repo('install -y --exclude=%s --exclude=curl-staticdev curl*' % excludepkg)
- #check curl-dev is not installed after being excluded
- status, output = self.target.run('dnf list --installed | grep %s'% excludepkg , 1500)
- self.assertEqual(1, status, "%s was not excluded, is listed as installed"%excludepkg)
+ self.dnf_with_repo('remove -y dnf-test-*')
+ self.dnf_with_repo('install -y --exclude=dnf-test-dep dnf-test-*')
+ output = self.dnf('list --installed dnf-test-*')
+ self.assertIn("dnf-test-main.", output)
+ self.assertNotIn("dnf-test-dev.", output)
diff --git a/poky/meta/lib/oeqa/runtime/cases/parselogs.py b/poky/meta/lib/oeqa/runtime/cases/parselogs.py
index e16c230dfa..e67d3750da 100644
--- a/poky/meta/lib/oeqa/runtime/cases/parselogs.py
+++ b/poky/meta/lib/oeqa/runtime/cases/parselogs.py
@@ -67,6 +67,8 @@ common_errors = [
"was skipped because of a failed condition check",
"was skipped because all trigger condition checks failed",
"xf86OpenConsole: Switching VT failed",
+ "Failed to read LoaderConfigTimeoutOneShot variable, ignoring: Operation not supported",
+ "Failed to read LoaderEntryOneShot variable, ignoring: Operation not supported",
]
video_related = [
diff --git a/poky/meta/lib/oeqa/selftest/cases/bblayers.py b/poky/meta/lib/oeqa/selftest/cases/bblayers.py
index c6bd5a1f6a..b048948386 100644
--- a/poky/meta/lib/oeqa/selftest/cases/bblayers.py
+++ b/poky/meta/lib/oeqa/selftest/cases/bblayers.py
@@ -14,7 +14,9 @@ from oeqa.selftest.case import OESelftestTestCase
class BitbakeLayers(OESelftestTestCase):
- def setUpLocal(self):
+ @classmethod
+ def setUpClass(cls):
+ super(BitbakeLayers, cls).setUpClass()
bitbake("python3-jsonschema-native")
bitbake("-c addto_recipe_sysroot python3-jsonschema-native")
diff --git a/poky/meta/lib/oeqa/selftest/cases/debuginfod.py b/poky/meta/lib/oeqa/selftest/cases/debuginfod.py
index 01359ec649..3c40119282 100644
--- a/poky/meta/lib/oeqa/selftest/cases/debuginfod.py
+++ b/poky/meta/lib/oeqa/selftest/cases/debuginfod.py
@@ -10,16 +10,24 @@ import subprocess
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import bitbake, get_bb_var, runqemu
+
class Debuginfod(OESelftestTestCase):
def test_debuginfod(self):
- self.write_config("""
+ self.write_config(
+ """
DISTRO_FEATURES:append = " debuginfod"
CORE_IMAGE_EXTRA_INSTALL += "elfutils"
- """)
+ """
+ )
bitbake("core-image-minimal elfutils-native:do_addto_recipe_sysroot")
native_sysroot = get_bb_var("RECIPE_SYSROOT_NATIVE", "elfutils-native")
- cmd = [os.path.join(native_sysroot, "usr", "bin", "debuginfod"), "--verbose", get_bb_var("DEPLOY_DIR")]
+ cmd = [
+ os.path.join(native_sysroot, "usr", "bin", "debuginfod"),
+ "--verbose",
+ "--database=:memory:",
+ get_bb_var("DEPLOY_DIR"),
+ ]
for format in get_bb_var("PACKAGE_CLASSES").split():
if format == "package_deb":
cmd.append("--scan-deb-dir")
@@ -36,7 +44,10 @@ CORE_IMAGE_EXTRA_INSTALL += "elfutils"
debuginfod = subprocess.Popen(cmd)
with runqemu("core-image-minimal", runqemuparams="nographic") as qemu:
- cmd = "DEBUGINFOD_URLS=http://%s:%d/ debuginfod-find debuginfo /usr/bin/debuginfod" % (qemu.server_ip, port)
+ cmd = (
+ "DEBUGINFOD_URLS=http://%s:%d/ debuginfod-find debuginfo /usr/bin/debuginfod"
+ % (qemu.server_ip, port)
+ )
status, output = qemu.run_serial(cmd)
# This should be more comprehensive
self.assertIn("/.cache/debuginfod_client/", output)
diff --git a/poky/meta/lib/oeqa/selftest/cases/overlayfs.py b/poky/meta/lib/oeqa/selftest/cases/overlayfs.py
index bff22f21b6..57a8c8bdb6 100644
--- a/poky/meta/lib/oeqa/selftest/cases/overlayfs.py
+++ b/poky/meta/lib/oeqa/selftest/cases/overlayfs.py
@@ -333,24 +333,14 @@ EXTRA_IMAGE_FEATURES += "package-management"
self.assertTrue("overlayfs-etc" in res.output, msg=res.output)
self.assertTrue("package-management" in res.output, msg=res.output)
- def test_image_feature_is_missing_class_included(self):
- configAppend = """
-INHERIT += "overlayfs-etc"
-"""
- self.run_check_image_feature(configAppend)
-
def test_image_feature_is_missing(self):
- self.run_check_image_feature()
-
- def run_check_image_feature(self, appendToConfig=""):
"""
Summary: Overlayfs-etc class is not applied when image feature is not set
- even if we inherit it directly,
Expected: Image is created successfully but /etc is not an overlay
Author: Vyacheslav Yurkov <uvv.mail@gmail.com>
"""
- config = f"""
+ config = """
DISTRO_FEATURES:append = " systemd"
# Use systemd as init manager
@@ -366,7 +356,6 @@ EXTRA_IMAGE_FEATURES += "read-only-rootfs"
# Image configuration for overlayfs-etc
OVERLAYFS_ETC_MOUNT_POINT = "/data"
OVERLAYFS_ETC_DEVICE = "/dev/sda3"
-{appendToConfig}
"""
self.write_config(config)
@@ -392,28 +381,7 @@ OVERLAYFS_ETC_DEVICE = "/dev/sda3"
Author: Vyacheslav Yurkov <uvv.mail@gmail.com>
"""
- config = """
-DISTRO_FEATURES:append = " systemd"
-
-# Use systemd as init manager
-VIRTUAL-RUNTIME_init_manager = "systemd"
-
-# enable overlayfs in the kernel
-KERNEL_EXTRA_FEATURES:append = " features/overlayfs/overlayfs.scc"
-
-IMAGE_FSTYPES += "wic"
-OVERLAYFS_INIT_OPTION = "{OVERLAYFS_INIT_OPTION}"
-WKS_FILE = "overlayfs_etc.wks.in"
-
-EXTRA_IMAGE_FEATURES += "read-only-rootfs"
-# Image configuration for overlayfs-etc
-EXTRA_IMAGE_FEATURES += "overlayfs-etc"
-IMAGE_FEATURES:remove = "package-management"
-OVERLAYFS_ETC_MOUNT_POINT = "/data"
-OVERLAYFS_ETC_FSTYPE = "ext4"
-OVERLAYFS_ETC_DEVICE = "/dev/sda3"
-OVERLAYFS_ETC_USE_ORIG_INIT_NAME = "{OVERLAYFS_ETC_USE_ORIG_INIT_NAME}"
-"""
+ config = self.get_working_config()
args = {
'OVERLAYFS_INIT_OPTION': "" if origInit else "init=/sbin/preinit",
@@ -434,6 +402,11 @@ OVERLAYFS_ETC_USE_ORIG_INIT_NAME = "{OVERLAYFS_ETC_USE_ORIG_INIT_NAME}"
line = getline_qemu(output, "upperdir=/data/overlay-etc/upper")
self.assertTrue(line and line.startswith("/data/overlay-etc/upper on /etc type overlay"), msg=output)
+ # check that lower layer is not available
+ status, output = qemu.run_serial("ls -1 /data/overlay-etc/lower")
+ line = getline_qemu(output, "No such file or directory")
+ self.assertTrue(line, msg=output)
+
status, output = qemu.run_serial("touch " + testFile)
status, output = qemu.run_serial("sync")
status, output = qemu.run_serial("ls -1 " + testFile)
@@ -445,3 +418,65 @@ OVERLAYFS_ETC_USE_ORIG_INIT_NAME = "{OVERLAYFS_ETC_USE_ORIG_INIT_NAME}"
status, output = qemu.run_serial("ls -1 " + testFile)
line = getline_qemu(output, testFile)
self.assertTrue(line and line.startswith(testFile), msg=output)
+
+ def test_lower_layer_access(self):
+ """
+ Summary: Test that lower layer of /etc is available read-only when configured
+ Expected: Can't write to lower layer. The files on lower and upper different after
+ modification
+ Author: Vyacheslav Yurkov <uvv.mail@gmail.com>
+ """
+
+ config = self.get_working_config()
+
+ configLower = """
+OVERLAYFS_ETC_EXPOSE_LOWER = "1"
+IMAGE_INSTALL:append = " overlayfs-user"
+"""
+ testFile = "lower-layer-test.txt"
+
+ args = {
+ 'OVERLAYFS_INIT_OPTION': "",
+ 'OVERLAYFS_ETC_USE_ORIG_INIT_NAME': 1
+ }
+
+ self.write_config(config.format(**args))
+
+ self.append_config(configLower)
+ bitbake('core-image-minimal')
+
+ with runqemu('core-image-minimal', image_fstype='wic') as qemu:
+ status, output = qemu.run_serial("echo \"Modified in upper\" > /etc/" + testFile)
+ status, output = qemu.run_serial("diff /etc/" + testFile + " /data/overlay-etc/lower/" + testFile)
+ line = getline_qemu(output, "Modified in upper")
+ self.assertTrue(line, msg=output)
+ line = getline_qemu(output, "Original file")
+ self.assertTrue(line, msg=output)
+
+ status, output = qemu.run_serial("touch /data/overlay-etc/lower/ro-test.txt")
+ line = getline_qemu(output, "Read-only file system")
+ self.assertTrue(line, msg=output)
+
+ def get_working_config(self):
+ return """
+DISTRO_FEATURES:append = " systemd"
+
+# Use systemd as init manager
+VIRTUAL-RUNTIME_init_manager = "systemd"
+
+# enable overlayfs in the kernel
+KERNEL_EXTRA_FEATURES:append = " features/overlayfs/overlayfs.scc"
+
+IMAGE_FSTYPES += "wic"
+OVERLAYFS_INIT_OPTION = "{OVERLAYFS_INIT_OPTION}"
+WKS_FILE = "overlayfs_etc.wks.in"
+
+EXTRA_IMAGE_FEATURES += "read-only-rootfs"
+# Image configuration for overlayfs-etc
+EXTRA_IMAGE_FEATURES += "overlayfs-etc"
+IMAGE_FEATURES:remove = "package-management"
+OVERLAYFS_ETC_MOUNT_POINT = "/data"
+OVERLAYFS_ETC_FSTYPE = "ext4"
+OVERLAYFS_ETC_DEVICE = "/dev/sda3"
+OVERLAYFS_ETC_USE_ORIG_INIT_NAME = "{OVERLAYFS_ETC_USE_ORIG_INIT_NAME}"
+"""
diff --git a/poky/meta/lib/oeqa/utils/decorators.py b/poky/meta/lib/oeqa/utils/decorators.py
index aabf4110cb..ea90164e5e 100644
--- a/poky/meta/lib/oeqa/utils/decorators.py
+++ b/poky/meta/lib/oeqa/utils/decorators.py
@@ -16,91 +16,6 @@ import threading
import signal
from functools import wraps
-#get the "result" object from one of the upper frames provided that one of these upper frames is a unittest.case frame
-class getResults(object):
- def __init__(self):
- #dynamically determine the unittest.case frame and use it to get the name of the test method
- ident = threading.current_thread().ident
- upperf = sys._current_frames()[ident]
- while (upperf.f_globals['__name__'] != 'unittest.case'):
- upperf = upperf.f_back
-
- def handleList(items):
- ret = []
- # items is a list of tuples, (test, failure) or (_ErrorHandler(), Exception())
- for i in items:
- s = i[0].id()
- #Handle the _ErrorHolder objects from skipModule failures
- if "setUpModule (" in s:
- ret.append(s.replace("setUpModule (", "").replace(")",""))
- else:
- ret.append(s)
- # Append also the test without the full path
- testname = s.split('.')[-1]
- if testname:
- ret.append(testname)
- return ret
- self.faillist = handleList(upperf.f_locals['result'].failures)
- self.errorlist = handleList(upperf.f_locals['result'].errors)
- self.skiplist = handleList(upperf.f_locals['result'].skipped)
-
- def getFailList(self):
- return self.faillist
-
- def getErrorList(self):
- return self.errorlist
-
- def getSkipList(self):
- return self.skiplist
-
-class skipIfFailure(object):
-
- def __init__(self,testcase):
- self.testcase = testcase
-
- def __call__(self,f):
- @wraps(f)
- def wrapped_f(*args, **kwargs):
- res = getResults()
- if self.testcase in (res.getFailList() or res.getErrorList()):
- raise unittest.SkipTest("Testcase dependency not met: %s" % self.testcase)
- return f(*args, **kwargs)
- wrapped_f.__name__ = f.__name__
- return wrapped_f
-
-class skipIfSkipped(object):
-
- def __init__(self,testcase):
- self.testcase = testcase
-
- def __call__(self,f):
- @wraps(f)
- def wrapped_f(*args, **kwargs):
- res = getResults()
- if self.testcase in res.getSkipList():
- raise unittest.SkipTest("Testcase dependency not met: %s" % self.testcase)
- return f(*args, **kwargs)
- wrapped_f.__name__ = f.__name__
- return wrapped_f
-
-class skipUnlessPassed(object):
-
- def __init__(self,testcase):
- self.testcase = testcase
-
- def __call__(self,f):
- @wraps(f)
- def wrapped_f(*args, **kwargs):
- res = getResults()
- if self.testcase in res.getSkipList() or \
- self.testcase in res.getFailList() or \
- self.testcase in res.getErrorList():
- raise unittest.SkipTest("Testcase dependency not met: %s" % self.testcase)
- return f(*args, **kwargs)
- wrapped_f.__name__ = f.__name__
- wrapped_f._depends_on = self.testcase
- return wrapped_f
-
class testcase(object):
def __init__(self, test_case):
self.test_case = test_case
diff --git a/poky/meta/lib/oeqa/utils/qemurunner.py b/poky/meta/lib/oeqa/utils/qemurunner.py
index 4c3d2010fb..6a85f57e49 100644
--- a/poky/meta/lib/oeqa/utils/qemurunner.py
+++ b/poky/meta/lib/oeqa/utils/qemurunner.py
@@ -85,7 +85,7 @@ class QemuRunner:
accepted_patterns = ['search_reached_prompt', 'send_login_user', 'search_login_succeeded', 'search_cmd_finished']
default_boot_patterns = defaultdict(str)
# Default to the usual paterns used to communicate with the target
- default_boot_patterns['search_reached_prompt'] = b' login:'
+ default_boot_patterns['search_reached_prompt'] = ' login:'
default_boot_patterns['send_login_user'] = 'root\n'
default_boot_patterns['search_login_succeeded'] = r"root@[a-zA-Z0-9\-]+:~#"
default_boot_patterns['search_cmd_finished'] = r"[a-zA-Z0-9]+@[a-zA-Z0-9\-]+:~#"
@@ -109,12 +109,15 @@ class QemuRunner:
sock.close()
raise
+ def decode_qemulog(self, todecode):
+ # Sanitize the data received from qemu as it may contain control characters
+ msg = todecode.decode("utf-8", errors='ignore')
+ msg = re_control_char.sub('', msg)
+ return msg
+
def log(self, msg):
if self.logfile:
- # It is needed to sanitize the data received from qemu
- # because is possible to have control characters
- msg = msg.decode("utf-8", errors='ignore')
- msg = re_control_char.sub('', msg)
+ msg = self.decode_qemulog(msg)
self.msg += msg
with codecs.open(self.logfile, "a", encoding="utf-8") as f:
f.write("%s" % msg)
@@ -188,8 +191,8 @@ class QemuRunner:
importlib.invalidate_caches()
try:
qmp = importlib.import_module("qmp")
- except:
- self.logger.error("qemurunner: qmp.py missing, please ensure it's installed")
+ except Exception as e:
+ self.logger.error("qemurunner: qmp.py missing, please ensure it's installed (%s)" % str(e))
return False
# Path relative to tmpdir used as cwd for qemu below to avoid unix socket path length issues
qmp_file = "." + next(tempfile._get_candidate_names())
@@ -325,7 +328,8 @@ class QemuRunner:
try:
os.chdir(os.path.dirname(qmp_port))
try:
- self.qmp = qmp.QEMUMonitorProtocol(os.path.basename(qmp_port))
+ from qmp.legacy import QEMUMonitorProtocol
+ self.qmp = QEMUMonitorProtocol(os.path.basename(qmp_port))
except OSError as msg:
self.logger.warning("Failed to initialize qemu monitor socket: %s File: %s" % (msg, msg.filename))
return False
@@ -467,13 +471,15 @@ class QemuRunner:
self.log(data)
data = b''
- if self.boot_patterns['search_reached_prompt'] in bootlog:
+
+ decodedlog = self.decode_qemulog(bootlog)
+ if self.boot_patterns['search_reached_prompt'] in decodedlog:
self.server_socket = qemusock
stopread = True
reachedlogin = True
- self.logger.debug("Reached login banner in %s seconds (%s)" %
+ self.logger.debug("Reached login banner in %s seconds (%s, %s)" %
(time.time() - (endtime - self.boottime),
- time.strftime("%D %H:%M:%S")))
+ time.strftime("%D %H:%M:%S"), time.time()))
else:
# no need to check if reachedlogin unless we support multiple connections
self.logger.debug("QEMU socket disconnected before login banner reached. (%s)" %
@@ -487,10 +493,10 @@ class QemuRunner:
self.logger.warning("Target didn't reach login banner in %d seconds (%s)" %
(self.boottime, time.strftime("%D %H:%M:%S")))
tail = lambda l: "\n".join(l.splitlines()[-25:])
- bootlog = bootlog.decode("utf-8")
+ bootlog = self.decode_qemulog(bootlog)
# in case bootlog is empty, use tail qemu log store at self.msg
lines = tail(bootlog if bootlog else self.msg)
- self.logger.warning("Last 25 lines of text:\n%s" % lines)
+ self.logger.warning("Last 25 lines of text (%d):\n%s" % (len(bootlog), lines))
self.logger.warning("Check full boot log: %s" % self.logfile)
self._dump_host()
self.stop()
diff --git a/poky/meta/recipes-bsp/grub/files/0001-configure-Remove-obsoleted-malign-jumps-loops-functi.patch b/poky/meta/recipes-bsp/grub/files/0001-configure-Remove-obsoleted-malign-jumps-loops-functi.patch
new file mode 100644
index 0000000000..98142a7b60
--- /dev/null
+++ b/poky/meta/recipes-bsp/grub/files/0001-configure-Remove-obsoleted-malign-jumps-loops-functi.patch
@@ -0,0 +1,48 @@
+From eb486898dac8cbc29b2cc39f911b657c3417ae34 Mon Sep 17 00:00:00 2001
+From: Fangrui Song via Grub-devel <grub-devel@gnu.org>
+Date: Thu, 26 Aug 2021 09:02:31 -0700
+Subject: [PATCH 1/2] configure: Remove obsoleted -malign-{jumps, loops,
+ functions}
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The GCC warns "cc1: warning: ‘-malign-loops’ is obsolete, use ‘-falign-loops’".
+The Clang silently ignores -malign-{jumps,loops,functions}.
+
+The preferred -falign-* forms have been supported since GCC 3.2. So, just
+remove -malign-{jumps,loops,functions}.
+
+Upstream-Status: Backport [https://git.savannah.gnu.org/cgit/grub.git/commit/?id=eb486898dac8cbc29b2cc39f911b657c3417ae34]
+Signed-off-by: Fangrui Song <maskray@google.com>
+Acked-by: Paul Menzel <pmenzel@molgen.mpg.de>
+Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
+---
+ configure.ac | 9 ---------
+ 1 file changed, 9 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index bee28dbeb..9a12151bd 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -805,17 +805,8 @@ if test "x$target_cpu" = xi386; then
+ [grub_cv_cc_falign_loop=no])
+ ])
+
+- AC_CACHE_CHECK([whether -malign-loops works], [grub_cv_cc_malign_loop], [
+- CFLAGS="$TARGET_CFLAGS -malign-loops=1 -Werror"
+- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])],
+- [grub_cv_cc_malign_loop=yes],
+- [grub_cv_cc_malign_loop=no])
+- ])
+-
+ if test "x$grub_cv_cc_falign_loop" = xyes; then
+ TARGET_CFLAGS="$TARGET_CFLAGS -falign-jumps=1 -falign-loops=1 -falign-functions=1"
+- elif test "x$grub_cv_cc_malign_loop" = xyes; then
+- TARGET_CFLAGS="$TARGET_CFLAGS -malign-jumps=1 -malign-loops=1 -malign-functions=1"
+ fi
+ fi
+
+--
+2.37.3
+
diff --git a/poky/meta/recipes-bsp/grub/files/0002-configure-Check-for-falign-jumps-1-beside-falign-loo.patch b/poky/meta/recipes-bsp/grub/files/0002-configure-Check-for-falign-jumps-1-beside-falign-loo.patch
new file mode 100644
index 0000000000..437e5b29b2
--- /dev/null
+++ b/poky/meta/recipes-bsp/grub/files/0002-configure-Check-for-falign-jumps-1-beside-falign-loo.patch
@@ -0,0 +1,59 @@
+From e372dcb0d4541ee9b9682cde088ec87a7b238ca2 Mon Sep 17 00:00:00 2001
+From: Fangrui Song via Grub-devel <grub-devel@gnu.org>
+Date: Thu, 26 Aug 2021 09:02:32 -0700
+Subject: [PATCH 2/2] configure: Check for -falign-jumps=1 beside
+ -falign-loops=1
+
+The Clang does not support -falign-jumps and only recently gained support
+for -falign-loops. The -falign-jumps=1 should be tested beside
+-fliang-loops=1 to avoid passing unrecognized options to the Clang:
+
+ clang-14: error: optimization flag '-falign-jumps=1' is not supported [-Werror,-Wignored-optimization-argument]
+
+The -falign-functions=1 is supported by GCC 5.1.0/Clang 3.8.0. So, just
+add the option unconditionally.
+
+Upstream-Status: Backport [https://git.savannah.gnu.org/cgit/grub.git/commit/?id=e372dcb0d4541ee9b9682cde088ec87a7b238ca2]
+Signed-off-by: Fangrui Song <maskray@google.com>
+Acked-by: Paul Menzel <pmenzel@molgen.mpg.de>
+Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
+---
+ configure.ac | 15 ++++++++++++++-
+ 1 file changed, 14 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 9a12151bd..eeb5d2211 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -798,6 +798,8 @@ fi
+
+ # Force no alignment to save space on i386.
+ if test "x$target_cpu" = xi386; then
++ TARGET_CFLAGS="$TARGET_CFLAGS -falign-functions=1"
++
+ AC_CACHE_CHECK([whether -falign-loops works], [grub_cv_cc_falign_loop], [
+ CFLAGS="$TARGET_CFLAGS -falign-loops=1 -Werror"
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])],
+@@ -806,7 +808,18 @@ if test "x$target_cpu" = xi386; then
+ ])
+
+ if test "x$grub_cv_cc_falign_loop" = xyes; then
+- TARGET_CFLAGS="$TARGET_CFLAGS -falign-jumps=1 -falign-loops=1 -falign-functions=1"
++ TARGET_CFLAGS="$TARGET_CFLAGS -falign-loops=1"
++ fi
++
++ AC_CACHE_CHECK([whether -falign-jumps works], [grub_cv_cc_falign_jumps], [
++ CFLAGS="$TARGET_CFLAGS -falign-jumps=1 -Werror"
++ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])],
++ [grub_cv_cc_falign_jumps=yes],
++ [grub_cv_cc_falign_jumps=no])
++ ])
++
++ if test "x$grub_cv_cc_falign_jumps" = xyes; then
++ TARGET_CFLAGS="$TARGET_CFLAGS -falign-jumps=1"
+ fi
+ fi
+
+--
+2.37.3
+
diff --git a/poky/meta/recipes-bsp/grub/grub2.inc b/poky/meta/recipes-bsp/grub/grub2.inc
index 47ea561002..2545b99b6a 100644
--- a/poky/meta/recipes-bsp/grub/grub2.inc
+++ b/poky/meta/recipes-bsp/grub/grub2.inc
@@ -32,6 +32,8 @@ SRC_URI = "${GNU_MIRROR}/grub/grub-${PV}.tar.gz \
file://CVE-2022-28734-net-http-Fix-OOB-write-for-split-http-headers.patch \
file://CVE-2022-28734-net-http-Error-out-on-headers-with-LF-without-CR.patch \
file://CVE-2022-28735-kern-efi-sb-Reject-non-kernel-files-in-the-shim_lock.patch \
+ file://0001-configure-Remove-obsoleted-malign-jumps-loops-functi.patch \
+ file://0002-configure-Check-for-falign-jumps-1-beside-falign-loo.patch \
"
SRC_URI[sha256sum] = "23b64b4c741569f9426ed2e3d0e6780796fca081bee4c99f62aa3f53ae803f5f"
@@ -43,9 +45,13 @@ CVE_CHECK_IGNORE += "CVE-2021-46705"
DEPENDS = "flex-native bison-native gettext-native"
-COMPATIBLE_HOST = '(x86_64.*|i.86.*|arm.*|aarch64.*|riscv.*)-(linux.*|freebsd.*)'
-COMPATIBLE_HOST:armv7a = 'null'
-COMPATIBLE_HOST:armv7ve = 'null'
+GRUB_COMPATIBLE_HOST = '(x86_64.*|i.86.*|arm.*|aarch64.*|riscv.*)-(linux.*|freebsd.*)'
+COMPATIBLE_HOST = "${GRUB_COMPATIBLE_HOST}"
+# Grub doesn't support hard float toolchain and won't be able to forcefully
+# disable it on some of the target CPUs. See 'configure.ac' for
+# supported/unsupported CPUs in hardfp.
+COMPATIBLE_HOST:armv7a = "${@'null' if d.getVar('TUNE_CCARGS_MFLOAT') == 'hardfp' else d.getVar('GRUB_COMPATIBLE_HOST')}"
+COMPATIBLE_HOST:armv7ve = "${@'null' if d.getVar('TUNE_CCARGS_MFLOAT') == 'hardfp' else d.getVar('GRUB_COMPATIBLE_HOST')}"
# configure.ac has code to set this automagically from the target tuple
# but the OE freeform one (core2-foo-bar-linux) don't work with that.
diff --git a/poky/meta/recipes-bsp/u-boot/libubootenv_0.3.2.bb b/poky/meta/recipes-bsp/u-boot/libubootenv_0.3.3.bb
index e8f58941cf..55f91b6f05 100644
--- a/poky/meta/recipes-bsp/u-boot/libubootenv_0.3.2.bb
+++ b/poky/meta/recipes-bsp/u-boot/libubootenv_0.3.3.bb
@@ -6,12 +6,12 @@ It provides a hardware-independent replacement for fw_printenv/setenv utilities
provided by U-Boot"
HOMEPAGE = "https://github.com/sbabic/libubootenv"
-LICENSE = "LGPL-2.1-only"
-LIC_FILES_CHKSUM = "file://Licenses/lgpl-2.1.txt;md5=4fbd65380cdd255951079008b364516c"
+LICENSE = "LGPL-2.1-or-later"
+LIC_FILES_CHKSUM = "file://LICENSES/LGPL-2.1-or-later.txt;md5=4fbd65380cdd255951079008b364516c"
SECTION = "libs"
SRC_URI = "git://github.com/sbabic/libubootenv;protocol=https;branch=master"
-SRCREV = "ba7564f5006d09bec51058cf4f5ac90d4dc18b3c"
+SRCREV = "108100622160bb0c7ef4b6186230fe1f26402791"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-bsp/u-boot/u-boot_2022.07.bb b/poky/meta/recipes-bsp/u-boot/u-boot_2022.07.bb
index 0d2464d74b..1ae575790c 100644
--- a/poky/meta/recipes-bsp/u-boot/u-boot_2022.07.bb
+++ b/poky/meta/recipes-bsp/u-boot/u-boot_2022.07.bb
@@ -1,7 +1,7 @@
require u-boot-common.inc
require u-boot.inc
-SRC_URI:append = " file://0001-riscv32-Use-double-float-ABI-for-rv32.patch \
+SRC_URI += " file://0001-riscv32-Use-double-float-ABI-for-rv32.patch \
file://0001-riscv-fix-build-with-binutils-2.38.patch \
"
diff --git a/poky/meta/recipes-connectivity/avahi/avahi_0.8.bb b/poky/meta/recipes-connectivity/avahi/avahi_0.8.bb
index a2efe7e80a..a830385352 100644
--- a/poky/meta/recipes-connectivity/avahi/avahi_0.8.bb
+++ b/poky/meta/recipes-connectivity/avahi/avahi_0.8.bb
@@ -19,7 +19,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1 \
file://avahi-daemon/main.c;endline=21;md5=9ee77368c5407af77caaef1b07285969 \
file://avahi-client/client.h;endline=23;md5=f4ac741a25c4f434039ba3e18c8674cf"
-SRC_URI = "https://github.com/lathiat/avahi/releases/download/v${PV}/avahi-${PV}.tar.gz \
+SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/avahi-${PV}.tar.gz \
file://00avahi-autoipd \
file://99avahi-autoipd \
file://initscript.patch \
@@ -28,7 +28,7 @@ SRC_URI = "https://github.com/lathiat/avahi/releases/download/v${PV}/avahi-${PV}
file://local-ping.patch \
"
-UPSTREAM_CHECK_URI = "https://github.com/lathiat/avahi/releases/"
+GITHUB_BASE_URI = "https://github.com/lathiat/avahi/releases/"
SRC_URI[md5sum] = "229c6aa30674fc43c202b22c5f8c2be7"
SRC_URI[sha256sum] = "060309d7a333d38d951bc27598c677af1796934dbd98e1024e7ad8de798fedda"
@@ -48,7 +48,7 @@ PACKAGECONFIG[libdns_sd] = "--enable-compat-libdns_sd --enable-dbus,,dbus"
PACKAGECONFIG[libevent] = "--enable-libevent,--disable-libevent,libevent"
PACKAGECONFIG[qt5] = "--enable-qt5,--disable-qt5,qtbase"
-inherit autotools pkgconfig gettext gobject-introspection
+inherit autotools pkgconfig gettext gobject-introspection github-releases
EXTRA_OECONF = "--with-avahi-priv-access-group=adm \
--disable-stack-protector \
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.18.6/0001-avoid-start-failure-with-bind-user.patch b/poky/meta/recipes-connectivity/bind/bind-9.18.7/0001-avoid-start-failure-with-bind-user.patch
index ec1bc7b567..ec1bc7b567 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.18.6/0001-avoid-start-failure-with-bind-user.patch
+++ b/poky/meta/recipes-connectivity/bind/bind-9.18.7/0001-avoid-start-failure-with-bind-user.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.18.6/0001-named-lwresd-V-and-start-log-hide-build-options.patch b/poky/meta/recipes-connectivity/bind/bind-9.18.7/0001-named-lwresd-V-and-start-log-hide-build-options.patch
index 4c10f33f04..4c10f33f04 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.18.6/0001-named-lwresd-V-and-start-log-hide-build-options.patch
+++ b/poky/meta/recipes-connectivity/bind/bind-9.18.7/0001-named-lwresd-V-and-start-log-hide-build-options.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.18.6/bind-ensure-searching-for-json-headers-searches-sysr.patch b/poky/meta/recipes-connectivity/bind/bind-9.18.7/bind-ensure-searching-for-json-headers-searches-sysr.patch
index f1abd179e8..f1abd179e8 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.18.6/bind-ensure-searching-for-json-headers-searches-sysr.patch
+++ b/poky/meta/recipes-connectivity/bind/bind-9.18.7/bind-ensure-searching-for-json-headers-searches-sysr.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.18.6/bind9 b/poky/meta/recipes-connectivity/bind/bind-9.18.7/bind9
index 968679ff7f..968679ff7f 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.18.6/bind9
+++ b/poky/meta/recipes-connectivity/bind/bind-9.18.7/bind9
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.18.6/conf.patch b/poky/meta/recipes-connectivity/bind/bind-9.18.7/conf.patch
index aa3642acec..aa3642acec 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.18.6/conf.patch
+++ b/poky/meta/recipes-connectivity/bind/bind-9.18.7/conf.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.18.6/generate-rndc-key.sh b/poky/meta/recipes-connectivity/bind/bind-9.18.7/generate-rndc-key.sh
index 633e29c0e6..633e29c0e6 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.18.6/generate-rndc-key.sh
+++ b/poky/meta/recipes-connectivity/bind/bind-9.18.7/generate-rndc-key.sh
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.18.6/init.d-add-support-for-read-only-rootfs.patch b/poky/meta/recipes-connectivity/bind/bind-9.18.7/init.d-add-support-for-read-only-rootfs.patch
index 11db95ede1..11db95ede1 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.18.6/init.d-add-support-for-read-only-rootfs.patch
+++ b/poky/meta/recipes-connectivity/bind/bind-9.18.7/init.d-add-support-for-read-only-rootfs.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.18.6/make-etc-initd-bind-stop-work.patch b/poky/meta/recipes-connectivity/bind/bind-9.18.7/make-etc-initd-bind-stop-work.patch
index 146f3e35db..146f3e35db 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.18.6/make-etc-initd-bind-stop-work.patch
+++ b/poky/meta/recipes-connectivity/bind/bind-9.18.7/make-etc-initd-bind-stop-work.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.18.6/named.service b/poky/meta/recipes-connectivity/bind/bind-9.18.7/named.service
index cda56ef015..cda56ef015 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.18.6/named.service
+++ b/poky/meta/recipes-connectivity/bind/bind-9.18.7/named.service
diff --git a/poky/meta/recipes-connectivity/bind/bind_9.18.6.bb b/poky/meta/recipes-connectivity/bind/bind_9.18.7.bb
index 5f54942776..4ab11486bf 100644
--- a/poky/meta/recipes-connectivity/bind/bind_9.18.6.bb
+++ b/poky/meta/recipes-connectivity/bind/bind_9.18.7.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] = "d43a0fed03c774d1685d203598218c0b7774a88fcc390a0170710d5feb7fbff1"
+SRC_URI[sha256sum] = "9e2acf1698f49d70ad12ffbad39ec6716a7da524e9ebd98429c7c70ba1262981"
UPSTREAM_CHECK_URI = "https://ftp.isc.org/isc/bind9/"
# follow the ESV versions divisible by 2
diff --git a/poky/meta/recipes-connectivity/connman/connman/connman b/poky/meta/recipes-connectivity/connman/connman/connman
index 310a696863..a021fd4655 100644
--- a/poky/meta/recipes-connectivity/connman/connman/connman
+++ b/poky/meta/recipes-connectivity/connman/connman/connman
@@ -10,48 +10,11 @@ fi
set -e
-nfsroot=0
-
-exec 9<&0 < /proc/mounts
-while read dev mtpt fstype rest; do
- if test $mtpt = "/" ; then
- case $fstype in
- nfs | nfs4)
- nfsroot=1
- break
- ;;
- *)
- ;;
- esac
- fi
-done
-
do_start() {
- if test $nfsroot -eq 1 ; then
- NET_DEVS=`cat /proc/net/dev | sed -ne 's/^\([a-zA-Z0-9 ]*\):.*$/\1/p'`
- NET_ADDR=`cat /proc/cmdline | sed -ne 's/^.*ip=\([^ :]*\).*$/\1/p'`
-
- if [ ! -z "$NET_ADDR" ]; then
- if [ "$NET_ADDR" = dhcp ]; then
- ethn=`ifconfig | grep "^eth" | sed -e "s/\(eth[0-9]\)\(.*\)/\1/"`
- if [ ! -z "$ethn" ]; then
- EXTRA_PARAM="$EXTRA_PARAM -I $ethn"
- fi
- else
- for i in $NET_DEVS; do
- ADDR=`ifconfig $i | sed 's/addr://g' | sed -ne 's/^.*inet \([0-9.]*\) .*$/\1/p'`
- if [ "$NET_ADDR" = "$ADDR" ]; then
- EXTRA_PARAM="$EXTRA_PARAM -I $i"
- break
- fi
- done
- fi
- fi
- fi
if [ -f @DATADIR@/connman/wired-setup ] ; then
. @DATADIR@/connman/wired-setup
fi
- $DAEMON $EXTRA_PARAM
+ $DAEMON
}
do_stop() {
diff --git a/poky/meta/recipes-connectivity/inetutils/inetutils/CVE-2022-39028.patch b/poky/meta/recipes-connectivity/inetutils/inetutils/CVE-2022-39028.patch
new file mode 100644
index 0000000000..3b07515c7b
--- /dev/null
+++ b/poky/meta/recipes-connectivity/inetutils/inetutils/CVE-2022-39028.patch
@@ -0,0 +1,54 @@
+From d52349fa1b6baac77ffa2c74769636aa2ece2ec5 Mon Sep 17 00:00:00 2001
+From: Erik Auerswald <auerswal@unix-ag.uni-kl.de>
+Date: Sat, 3 Sep 2022 16:58:16 +0200
+Subject: [PATCH] telnetd: Handle early IAC EC or IAC EL receipt
+
+Fix telnetd crash if the first two bytes of a new connection
+are 0xff 0xf7 (IAC EC) or 0xff 0xf8 (IAC EL).
+
+The problem was reported in:
+<https://pierrekim.github.io/blog/2022-08-24-2-byte-dos-freebsd-netbsd-telnetd-netkit-telnetd-inetutils-telnetd-kerberos-telnetd.html>.
+
+* NEWS: Mention fix.
+* telnetd/state.c (telrcv): Handle zero slctab[SLC_EC].sptr and
+zero slctab[SLC_EL].sptr.
+
+CVE: CVE-2022-39028
+Upstream-Status: Backport [https://git.savannah.gnu.org/cgit/inetutils.git/commit/?id=fae8263e467380483c28513c0e5fac143e46f94f]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ telnetd/state.c | 12 +++++++++---
+ 1 file changed, 9 insertions(+), 3 deletions(-)
+
+diff --git a/telnetd/state.c b/telnetd/state.c
+index ffc6cba..c2d760f 100644
+--- a/telnetd/state.c
++++ b/telnetd/state.c
+@@ -312,15 +312,21 @@ telrcv (void)
+ case EC:
+ case EL:
+ {
+- cc_t ch;
++ cc_t ch = (cc_t) (_POSIX_VDISABLE);
+
+ DEBUG (debug_options, 1, printoption ("td: recv IAC", c));
+ ptyflush (); /* half-hearted */
+ init_termbuf ();
+ if (c == EC)
+- ch = *slctab[SLC_EC].sptr;
++ {
++ if (slctab[SLC_EC].sptr)
++ ch = *slctab[SLC_EC].sptr;
++ }
+ else
+- ch = *slctab[SLC_EL].sptr;
++ {
++ if (slctab[SLC_EL].sptr)
++ ch = *slctab[SLC_EL].sptr;
++ }
+ if (ch != (cc_t) (_POSIX_VDISABLE))
+ pty_output_byte ((unsigned char) ch);
+ break;
+--
+2.37.3
+
diff --git a/poky/meta/recipes-connectivity/inetutils/inetutils_2.3.bb b/poky/meta/recipes-connectivity/inetutils/inetutils_2.3.bb
index 1e8f63637e..2fce84374d 100644
--- a/poky/meta/recipes-connectivity/inetutils/inetutils_2.3.bb
+++ b/poky/meta/recipes-connectivity/inetutils/inetutils_2.3.bb
@@ -21,6 +21,7 @@ SRC_URI = "${GNU_MIRROR}/inetutils/inetutils-${PV}.tar.xz \
file://tftpd.xinetd.inetutils \
file://inetutils-1.9-PATH_PROCNET_DEV.patch \
file://inetutils-only-check-pam_appl.h-when-pam-enabled.patch \
+ file://CVE-2022-39028.patch \
"
inherit autotools gettext update-alternatives texinfo
diff --git a/poky/meta/recipes-connectivity/iproute2/iproute2.inc b/poky/meta/recipes-connectivity/iproute2/iproute2.inc
deleted file mode 100644
index b1bcc1434c..0000000000
--- a/poky/meta/recipes-connectivity/iproute2/iproute2.inc
+++ /dev/null
@@ -1,91 +0,0 @@
-SUMMARY = "TCP / IP networking and traffic control utilities"
-DESCRIPTION = "Iproute2 is a collection of utilities for controlling \
-TCP / IP networking and traffic control in Linux. Of the utilities ip \
-and tc are the most important. ip controls IPv4 and IPv6 \
-configuration and tc stands for traffic control."
-HOMEPAGE = "http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2"
-SECTION = "base"
-LICENSE = "GPL-2.0-or-later"
-LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
- file://ip/ip.c;beginline=3;endline=8;md5=689d691d0410a4b64d3899f8d6e31817"
-
-DEPENDS = "flex-native bison-native iptables libcap"
-
-inherit update-alternatives bash-completion pkgconfig
-
-CLEANBROKEN = "1"
-
-PACKAGECONFIG ??= "tipc elf devlink"
-PACKAGECONFIG[tipc] = ",,libmnl,"
-PACKAGECONFIG[elf] = ",,elfutils,"
-PACKAGECONFIG[devlink] = ",,libmnl,"
-PACKAGECONFIG[rdma] = ",,libmnl,"
-
-IPROUTE2_MAKE_SUBDIRS = "lib tc ip bridge misc genl ${@bb.utils.filter('PACKAGECONFIG', 'devlink tipc rdma', d)}"
-
-EXTRA_OEMAKE = "\
- CC='${CC}' \
- KERNEL_INCLUDE=${STAGING_INCDIR} \
- DOCDIR=${docdir}/iproute2 \
- SUBDIRS='${IPROUTE2_MAKE_SUBDIRS}' \
- SBINDIR='${base_sbindir}' \
- LIBDIR='${libdir}' \
-"
-
-do_configure:append () {
- sh configure ${STAGING_INCDIR}
- # Explicitly disable ATM support
- sed -i -e '/TC_CONFIG_ATM/d' config.mk
-}
-
-do_install () {
- oe_runmake DESTDIR=${D} install
- mv ${D}${base_sbindir}/ip ${D}${base_sbindir}/ip.iproute2
- install -d ${D}${datadir}
- mv ${D}/share/* ${D}${datadir}/ || true
- rm ${D}/share -rf || true
-}
-
-# The .so files in iproute2-tc are modules, not traditional libraries
-INSANE_SKIP:${PN}-tc = "dev-so"
-
-IPROUTE2_PACKAGES =+ "\
- ${PN}-devlink \
- ${PN}-genl \
- ${PN}-ifstat \
- ${PN}-ip \
- ${PN}-lnstat \
- ${PN}-nstat \
- ${PN}-rtacct \
- ${PN}-ss \
- ${PN}-tc \
- ${PN}-tipc \
- ${PN}-rdma \
-"
-
-PACKAGE_BEFORE_PN = "${IPROUTE2_PACKAGES}"
-RDEPENDS:${PN} += "${PN}-ip"
-
-FILES:${PN}-tc = "${base_sbindir}/tc* \
- ${libdir}/tc/*.so"
-FILES:${PN}-lnstat = "${base_sbindir}/lnstat \
- ${base_sbindir}/ctstat \
- ${base_sbindir}/rtstat"
-FILES:${PN}-ifstat = "${base_sbindir}/ifstat"
-FILES:${PN}-ip = "${base_sbindir}/ip.${PN} ${sysconfdir}/iproute2"
-FILES:${PN}-genl = "${base_sbindir}/genl"
-FILES:${PN}-rtacct = "${base_sbindir}/rtacct"
-FILES:${PN}-nstat = "${base_sbindir}/nstat"
-FILES:${PN}-ss = "${base_sbindir}/ss"
-FILES:${PN}-tipc = "${base_sbindir}/tipc"
-FILES:${PN}-devlink = "${base_sbindir}/devlink"
-FILES:${PN}-rdma = "${base_sbindir}/rdma"
-
-ALTERNATIVE:${PN}-ip = "ip"
-ALTERNATIVE_TARGET[ip] = "${base_sbindir}/ip.${BPN}"
-ALTERNATIVE_LINK_NAME[ip] = "${base_sbindir}/ip"
-ALTERNATIVE_PRIORITY = "100"
-
-ALTERNATIVE:${PN}-tc = "tc"
-ALTERNATIVE_LINK_NAME[tc] = "${base_sbindir}/tc"
-ALTERNATIVE_PRIORITY_${PN}-tc = "100"
diff --git a/poky/meta/recipes-connectivity/iproute2/iproute2_5.19.0.bb b/poky/meta/recipes-connectivity/iproute2/iproute2_5.19.0.bb
index 6a007797c9..3cbf80a810 100644
--- a/poky/meta/recipes-connectivity/iproute2/iproute2_5.19.0.bb
+++ b/poky/meta/recipes-connectivity/iproute2/iproute2_5.19.0.bb
@@ -1,4 +1,15 @@
-require iproute2.inc
+SUMMARY = "TCP / IP networking and traffic control utilities"
+DESCRIPTION = "Iproute2 is a collection of utilities for controlling \
+TCP / IP networking and traffic control in Linux. Of the utilities ip \
+and tc are the most important. ip controls IPv4 and IPv6 \
+configuration and tc stands for traffic control."
+HOMEPAGE = "http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2"
+SECTION = "base"
+LICENSE = "GPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
+ file://ip/ip.c;beginline=3;endline=8;md5=689d691d0410a4b64d3899f8d6e31817"
+
+DEPENDS = "flex-native bison-native iptables libcap"
SRC_URI = "${KERNELORG_MIRROR}/linux/utils/net/${BPN}/${BP}.tar.xz \
file://0001-libc-compat.h-add-musl-workaround.patch \
@@ -8,6 +19,82 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/net/${BPN}/${BP}.tar.xz \
SRC_URI[sha256sum] = "26b7a34d6a7fd2f7a42e2b39c5a90cb61bac522d1096067ffeb195e5693d7791"
+inherit update-alternatives bash-completion pkgconfig
+
+PACKAGECONFIG ??= "tipc elf devlink"
+PACKAGECONFIG[tipc] = ",,libmnl,"
+PACKAGECONFIG[elf] = ",,elfutils,"
+PACKAGECONFIG[devlink] = ",,libmnl,"
+PACKAGECONFIG[rdma] = ",,libmnl,"
+
+IPROUTE2_MAKE_SUBDIRS = "lib tc ip bridge misc genl ${@bb.utils.filter('PACKAGECONFIG', 'devlink tipc rdma', d)}"
+
# CFLAGS are computed in Makefile and reference CCOPTS
#
-EXTRA_OEMAKE:append = " CCOPTS='${CFLAGS}'"
+EXTRA_OEMAKE = "\
+ CC='${CC}' \
+ KERNEL_INCLUDE=${STAGING_INCDIR} \
+ DOCDIR=${docdir}/iproute2 \
+ SUBDIRS='${IPROUTE2_MAKE_SUBDIRS}' \
+ SBINDIR='${base_sbindir}' \
+ LIBDIR='${libdir}' \
+ CCOPTS='${CFLAGS}' \
+"
+
+do_configure:append () {
+ sh configure ${STAGING_INCDIR}
+ # Explicitly disable ATM support
+ sed -i -e '/TC_CONFIG_ATM/d' config.mk
+}
+
+do_install () {
+ oe_runmake DESTDIR=${D} install
+ mv ${D}${base_sbindir}/ip ${D}${base_sbindir}/ip.iproute2
+ install -d ${D}${datadir}
+ mv ${D}/share/* ${D}${datadir}/ || true
+ rm ${D}/share -rf || true
+}
+
+# The .so files in iproute2-tc are modules, not traditional libraries
+INSANE_SKIP:${PN}-tc = "dev-so"
+
+IPROUTE2_PACKAGES =+ "\
+ ${PN}-devlink \
+ ${PN}-genl \
+ ${PN}-ifstat \
+ ${PN}-ip \
+ ${PN}-lnstat \
+ ${PN}-nstat \
+ ${PN}-rtacct \
+ ${PN}-ss \
+ ${PN}-tc \
+ ${PN}-tipc \
+ ${PN}-rdma \
+"
+
+PACKAGE_BEFORE_PN = "${IPROUTE2_PACKAGES}"
+RDEPENDS:${PN} += "${PN}-ip"
+
+FILES:${PN}-tc = "${base_sbindir}/tc* \
+ ${libdir}/tc/*.so"
+FILES:${PN}-lnstat = "${base_sbindir}/lnstat \
+ ${base_sbindir}/ctstat \
+ ${base_sbindir}/rtstat"
+FILES:${PN}-ifstat = "${base_sbindir}/ifstat"
+FILES:${PN}-ip = "${base_sbindir}/ip.${PN} ${sysconfdir}/iproute2"
+FILES:${PN}-genl = "${base_sbindir}/genl"
+FILES:${PN}-rtacct = "${base_sbindir}/rtacct"
+FILES:${PN}-nstat = "${base_sbindir}/nstat"
+FILES:${PN}-ss = "${base_sbindir}/ss"
+FILES:${PN}-tipc = "${base_sbindir}/tipc"
+FILES:${PN}-devlink = "${base_sbindir}/devlink"
+FILES:${PN}-rdma = "${base_sbindir}/rdma"
+
+ALTERNATIVE:${PN}-ip = "ip"
+ALTERNATIVE_TARGET[ip] = "${base_sbindir}/ip.${BPN}"
+ALTERNATIVE_LINK_NAME[ip] = "${base_sbindir}/ip"
+ALTERNATIVE_PRIORITY = "100"
+
+ALTERNATIVE:${PN}-tc = "tc"
+ALTERNATIVE_LINK_NAME[tc] = "${base_sbindir}/tc"
+ALTERNATIVE_PRIORITY_${PN}-tc = "100"
diff --git a/poky/meta/recipes-connectivity/ofono/ofono_1.34.bb b/poky/meta/recipes-connectivity/ofono/ofono_2.0.bb
index 23631747a7..afd43d26f3 100644
--- a/poky/meta/recipes-connectivity/ofono/ofono_1.34.bb
+++ b/poky/meta/recipes-connectivity/ofono/ofono_2.0.bb
@@ -13,7 +13,7 @@ SRC_URI = "\
file://0001-mbim-add-an-optional-TEMP_FAILURE_RETRY-macro-copy.patch \
file://0002-mbim-Fix-build-with-ell-0.39-by-restoring-unlikely-m.patch \
"
-SRC_URI[sha256sum] = "c0b96d3013447ec2bcb74579bef90e4e59c68dbfa4b9c6fbce5d12401a43aac7"
+SRC_URI[sha256sum] = "b0a31bf4d8ff3030c4aef9f8413df999c54df9db2ff0a1d3ec1710e0a9d1a49e"
inherit autotools pkgconfig update-rc.d systemd gobject-introspection-data
diff --git a/poky/meta/recipes-core/busybox/busybox/0001-devmem-add-128-bit-width.patch b/poky/meta/recipes-core/busybox/busybox/0001-devmem-add-128-bit-width.patch
new file mode 100644
index 0000000000..985e2bf1d9
--- /dev/null
+++ b/poky/meta/recipes-core/busybox/busybox/0001-devmem-add-128-bit-width.patch
@@ -0,0 +1,128 @@
+From d432049f288c9acdc4a7caa729c68ceba3c5dca1 Mon Sep 17 00:00:00 2001
+From: Aaro Koskinen <aaro.koskinen@nokia.com>
+Date: Thu, 25 Aug 2022 18:47:02 +0300
+Subject: [PATCH] devmem: add 128-bit width
+
+Add 128-bit width if the compiler provides the needed type.
+
+function old new delta
+devmem_main 405 464 +59
+.rodata 109025 109043 +18
+------------------------------------------------------------------------------
+(add/remove: 0/0 grow/shrink: 2/0 up/down: 77/0) Total: 77 bytes
+
+Upstream-Status: Backport [https://git.busybox.net/busybox/commit/?id=d432049f288c9acdc4a7caa729c68ceba3c5dca1]
+
+Signed-off-by: Aaro Koskinen <aaro.koskinen@nokia.com>
+Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
+Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ miscutils/devmem.c | 68 ++++++++++++++++++++++++++++++----------------
+ 1 file changed, 44 insertions(+), 24 deletions(-)
+
+diff --git a/miscutils/devmem.c b/miscutils/devmem.c
+index f9f0276bc..f21621bd6 100644
+--- a/miscutils/devmem.c
++++ b/miscutils/devmem.c
+@@ -29,7 +29,6 @@ int devmem_main(int argc UNUSED_PARAM, char **argv)
+ {
+ void *map_base, *virt_addr;
+ uint64_t read_result;
+- uint64_t writeval = writeval; /* for compiler */
+ off_t target;
+ unsigned page_size, mapped_size, offset_in_page;
+ int fd;
+@@ -64,9 +63,6 @@ int devmem_main(int argc UNUSED_PARAM, char **argv)
+ width = strchrnul(bhwl, (argv[2][0] | 0x20)) - bhwl;
+ width = sizes[width];
+ }
+- /* VALUE */
+- if (argv[3])
+- writeval = bb_strtoull(argv[3], NULL, 0);
+ } else { /* argv[2] == NULL */
+ /* make argv[3] to be a valid thing to fetch */
+ argv--;
+@@ -96,28 +92,46 @@ int devmem_main(int argc UNUSED_PARAM, char **argv)
+ virt_addr = (char*)map_base + offset_in_page;
+
+ if (!argv[3]) {
+- switch (width) {
+- case 8:
+- read_result = *(volatile uint8_t*)virt_addr;
+- break;
+- case 16:
+- read_result = *(volatile uint16_t*)virt_addr;
+- break;
+- case 32:
+- read_result = *(volatile uint32_t*)virt_addr;
+- break;
+- case 64:
+- read_result = *(volatile uint64_t*)virt_addr;
+- break;
+- default:
+- bb_simple_error_msg_and_die("bad width");
++#ifdef __SIZEOF_INT128__
++ if (width == 128) {
++ unsigned __int128 rd =
++ *(volatile unsigned __int128 *)virt_addr;
++ printf("0x%016llX%016llX\n",
++ (unsigned long long)(uint64_t)(rd >> 64),
++ (unsigned long long)(uint64_t)rd
++ );
++ } else
++#endif
++ {
++ switch (width) {
++ case 8:
++ read_result = *(volatile uint8_t*)virt_addr;
++ break;
++ case 16:
++ read_result = *(volatile uint16_t*)virt_addr;
++ break;
++ case 32:
++ read_result = *(volatile uint32_t*)virt_addr;
++ break;
++ case 64:
++ read_result = *(volatile uint64_t*)virt_addr;
++ break;
++ default:
++ bb_simple_error_msg_and_die("bad width");
++ }
++// printf("Value at address 0x%"OFF_FMT"X (%p): 0x%llX\n",
++// target, virt_addr,
++// (unsigned long long)read_result);
++ /* Zero-padded output shows the width of access just done */
++ printf("0x%0*llX\n", (width >> 2), (unsigned long long)read_result);
+ }
+-// printf("Value at address 0x%"OFF_FMT"X (%p): 0x%llX\n",
+-// target, virt_addr,
+-// (unsigned long long)read_result);
+- /* Zero-padded output shows the width of access just done */
+- printf("0x%0*llX\n", (width >> 2), (unsigned long long)read_result);
+ } else {
++ /* parse VALUE */
++#ifdef __SIZEOF_INT128__
++ unsigned __int128 writeval = strtoumax(argv[3], NULL, 0);
++#else
++ uint64_t writeval = bb_strtoull(argv[3], NULL, 0);
++#endif
+ switch (width) {
+ case 8:
+ *(volatile uint8_t*)virt_addr = writeval;
+@@ -135,6 +149,12 @@ int devmem_main(int argc UNUSED_PARAM, char **argv)
+ *(volatile uint64_t*)virt_addr = writeval;
+ // read_result = *(volatile uint64_t*)virt_addr;
+ break;
++#ifdef __SIZEOF_INT128__
++ case 128:
++ *(volatile unsigned __int128 *)virt_addr = writeval;
++// read_result = *(volatile uint64_t*)virt_addr;
++ break;
++#endif
+ default:
+ bb_simple_error_msg_and_die("bad width");
+ }
+--
+2.25.1
+
diff --git a/poky/meta/recipes-core/busybox/busybox_1.35.0.bb b/poky/meta/recipes-core/busybox/busybox_1.35.0.bb
index edf896485e..e9ca6fdb1a 100644
--- a/poky/meta/recipes-core/busybox/busybox_1.35.0.bb
+++ b/poky/meta/recipes-core/busybox/busybox_1.35.0.bb
@@ -50,6 +50,7 @@ SRC_URI = "https://busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \
file://0001-libbb-sockaddr2str-ensure-only-printable-characters-.patch \
file://0002-nslookup-sanitize-all-printed-strings-with-printable.patch \
file://CVE-2022-30065.patch \
+ file://0001-devmem-add-128-bit-width.patch \
"
SRC_URI:append:libc-musl = " file://musl.cfg "
diff --git a/poky/meta/recipes-core/coreutils/coreutils_9.1.bb b/poky/meta/recipes-core/coreutils/coreutils_9.1.bb
index 55663c7713..4807eefd04 100644
--- a/poky/meta/recipes-core/coreutils/coreutils_9.1.bb
+++ b/poky/meta/recipes-core/coreutils/coreutils_9.1.bb
@@ -46,6 +46,7 @@ PACKAGECONFIG[acl] = "--enable-acl,--disable-acl,acl,"
PACKAGECONFIG[xattr] = "--enable-xattr,--disable-xattr,attr,"
PACKAGECONFIG[single-binary] = "--enable-single-binary,--disable-single-binary,,"
PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux"
+PACKAGECONFIG[openssl] = "--with-openssl=yes,--with-openssl=no,openssl"
# [ df mktemp nice printenv base64 gets a special treatment and is not included in this
bindir_progs = "arch basename chcon cksum comm csplit cut dir dircolors dirname du \
diff --git a/poky/meta/recipes-core/dropbear/dropbear/0007-Fix-X11-build-failure-use-DROPBEAR_PRIO_LOWDELAY.patch b/poky/meta/recipes-core/dropbear/dropbear/0007-Fix-X11-build-failure-use-DROPBEAR_PRIO_LOWDELAY.patch
new file mode 100644
index 0000000000..042dccbb94
--- /dev/null
+++ b/poky/meta/recipes-core/dropbear/dropbear/0007-Fix-X11-build-failure-use-DROPBEAR_PRIO_LOWDELAY.patch
@@ -0,0 +1,28 @@
+From 64292091fe3e8ea7c9bfe74af730b2ff5428bf10 Mon Sep 17 00:00:00 2001
+From: Matt Johnston <matt@ucc.asn.au>
+Date: Sat, 23 Apr 2022 22:33:31 +0800
+Subject: [PATCH] Fix X11 build failure, use DROPBEAR_PRIO_LOWDELAY
+
+Upstream-Status: Backport
+
+Signed-off-by: Daniel Gomez <daniel@qtec.com>
+---
+ svr-x11fwd.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/svr-x11fwd.c b/svr-x11fwd.c
+index 353cb12..5d9e6a9 100644
+--- a/svr-x11fwd.c
++++ b/svr-x11fwd.c
+@@ -206,7 +206,7 @@ void x11cleanup(struct ChanSess *chansess) {
+ }
+
+ static int x11_inithandler(struct Channel *channel) {
+- channel->prio = DROPBEAR_CHANNEL_PRIO_INTERACTIVE;
++ channel->prio = DROPBEAR_PRIO_LOWDELAY;
+ return 0;
+ }
+
+--
+2.35.1
+
diff --git a/poky/meta/recipes-core/dropbear/dropbear_2022.82.bb b/poky/meta/recipes-core/dropbear/dropbear_2022.82.bb
index 2de243b889..41c14ff2f1 100644
--- a/poky/meta/recipes-core/dropbear/dropbear_2022.82.bb
+++ b/poky/meta/recipes-core/dropbear/dropbear_2022.82.bb
@@ -22,7 +22,8 @@ SRC_URI = "http://matt.ucc.asn.au/dropbear/releases/dropbear-${PV}.tar.bz2 \
file://dropbear.socket \
file://dropbear.default \
${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)} \
- ${@bb.utils.contains('PACKAGECONFIG', 'disable-weak-ciphers', 'file://dropbear-disable-weak-ciphers.patch', '', d)} "
+ ${@bb.utils.contains('PACKAGECONFIG', 'disable-weak-ciphers', 'file://dropbear-disable-weak-ciphers.patch', '', d)} \
+ file://0007-Fix-X11-build-failure-use-DROPBEAR_PRIO_LOWDELAY.patch"
SRC_URI[sha256sum] = "3a038d2bbc02bf28bbdd20c012091f741a3ec5cbe460691811d714876aad75d1"
@@ -53,6 +54,7 @@ EXTRA_OEMAKE = 'MULTI=1 SCPPROGRESS=1 PROGRAMS="${SBINCOMMANDS} ${BINCOMMANDS}"'
PACKAGECONFIG ?= "disable-weak-ciphers"
PACKAGECONFIG[system-libtom] = "--disable-bundled-libtom,--enable-bundled-libtom,libtommath libtomcrypt"
PACKAGECONFIG[disable-weak-ciphers] = ""
+PACKAGECONFIG[enable-x11-forwarding] = ""
EXTRA_OECONF += "\
${@bb.utils.contains('DISTRO_FEATURES', 'pam', '--enable-pam', '--disable-pam', d)}"
@@ -64,6 +66,13 @@ EXTRA_OECONF += "--disable-harden"
# musl does not implement wtmp/logwtmp APIs
EXTRA_OECONF:append:libc-musl = " --disable-wtmp --disable-lastlog"
+do_configure:append() {
+ echo "/* Dropbear features */" > ${B}/localoptions.h
+ if ${@bb.utils.contains('PACKAGECONFIG', 'enable-x11-forwarding', 'true', 'false', d)}; then
+ echo "#define DROPBEAR_X11FWD 1" >> ${B}/localoptions.h
+ fi
+}
+
do_install() {
install -d ${D}${sysconfdir} \
${D}${sysconfdir}/init.d \
diff --git a/poky/meta/recipes-core/ell/ell_0.52.bb b/poky/meta/recipes-core/ell/ell_0.53.bb
index b2af0d04f0..7817476030 100644
--- a/poky/meta/recipes-core/ell/ell_0.52.bb
+++ b/poky/meta/recipes-core/ell/ell_0.53.bb
@@ -15,7 +15,7 @@ DEPENDS = "dbus"
inherit autotools pkgconfig
SRC_URI = "https://mirrors.edge.kernel.org/pub/linux/libs/${BPN}/${BPN}-${PV}.tar.xz"
-SRC_URI[sha256sum] = "83099b14beda2b253a2c69460f9613c5e955b63349e3c00cf2fd506f5b3ba7d0"
+SRC_URI[sha256sum] = "a7d0df846af839bbea1b80f292166371070328854b3fa785b5c607fe600552ad"
do_configure:prepend () {
mkdir -p ${S}/build-aux
diff --git a/poky/meta/recipes-core/expat/expat_2.4.8.bb b/poky/meta/recipes-core/expat/expat_2.4.9.bb
index 980c488640..9561edd84f 100644
--- a/poky/meta/recipes-core/expat/expat_2.4.8.bb
+++ b/poky/meta/recipes-core/expat/expat_2.4.9.bb
@@ -4,23 +4,24 @@ HOMEPAGE = "https://github.com/libexpat/libexpat"
SECTION = "libs"
LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=9e2ce3b3c4c0f2670883a23bbd7c37a9"
+LIC_FILES_CHKSUM = "file://COPYING;md5=7b3b078238d0901d3b339289117cb7fb"
VERSION_TAG = "${@d.getVar('PV').replace('.', '_')}"
-SRC_URI = "https://github.com/libexpat/libexpat/releases/download/R_${VERSION_TAG}/expat-${PV}.tar.bz2 \
+SRC_URI = "${GITHUB_BASE_URI}/download/R_${VERSION_TAG}/expat-${PV}.tar.bz2 \
file://run-ptest \
"
-UPSTREAM_CHECK_URI = "https://github.com/libexpat/libexpat/releases/"
+GITHUB_BASE_URI = "https://github.com/libexpat/libexpat/releases/"
+UPSTREAM_CHECK_REGEX = "releases/tag/R_(?P<pver>.+)"
-SRC_URI[sha256sum] = "a247a7f6bbb21cf2ca81ea4cbb916bfb9717ca523631675f99b3d4a5678dcd16"
+SRC_URI[sha256sum] = "7f44d1469b110773a94b0d5abeeeffaef79f8bd6406b07e52394bcf48126437a"
EXTRA_OECMAKE:class-native += "-DEXPAT_BUILD_DOCS=OFF"
RDEPENDS:${PN}-ptest += "bash"
-inherit cmake lib_package ptest
+inherit cmake lib_package ptest github-releases
do_install_ptest:class-target() {
install -m 755 ${B}/tests/* ${D}${PTEST_PATH}
diff --git a/poky/meta/recipes-core/glibc/glibc-locale.inc b/poky/meta/recipes-core/glibc/glibc-locale.inc
index b8de7d3192..7c14abfe99 100644
--- a/poky/meta/recipes-core/glibc/glibc-locale.inc
+++ b/poky/meta/recipes-core/glibc/glibc-locale.inc
@@ -87,10 +87,9 @@ do_install() {
if [ ${PACKAGE_NO_GCONV} -eq 0 ]; then
copy_locale_files ${libdir}/gconv 0755
copy_locale_files ${datadir}/i18n 0644
- else
- # Remove the libdir if it is empty when gconv is not copied
- find ${D}${libdir} -type d -empty -delete
fi
+ # Remove empty dirs in libdir when gconv or locales are not copied
+ find ${D}${libdir} -type d -empty -delete
copy_locale_files ${datadir}/locale 0644
install -m 0644 ${LOCALETREESRC}/SUPPORTED ${WORKDIR}/SUPPORTED
}
diff --git a/poky/meta/recipes-core/glibc/glibc-tests_2.36.bb b/poky/meta/recipes-core/glibc/glibc-tests_2.36.bb
index aca9675ebb..c71c0831c6 100644
--- a/poky/meta/recipes-core/glibc/glibc-tests_2.36.bb
+++ b/poky/meta/recipes-core/glibc/glibc-tests_2.36.bb
@@ -4,7 +4,7 @@ require glibc-tests.inc
inherit ptest features_check
REQUIRED_DISTRO_FEATURES = "ptest"
-SRC_URI:append = " \
+SRC_URI += "\
file://run-ptest \
"
@@ -29,7 +29,7 @@ python __anonymous() {
RPROVIDES:${PN} = "${PN}"
RRECOMMENDS:${PN} = ""
RDEPENDS:${PN} = " glibc sed"
-DEPENDS:append = " sed"
+DEPENDS += "sed"
export oe_srcdir="${exec_prefix}/src/debug/glibc/${PV}/"
diff --git a/poky/meta/recipes-core/glibc/glibc-version.inc b/poky/meta/recipes-core/glibc/glibc-version.inc
index a078eb6377..bd125ec401 100644
--- a/poky/meta/recipes-core/glibc/glibc-version.inc
+++ b/poky/meta/recipes-core/glibc/glibc-version.inc
@@ -1,6 +1,6 @@
SRCBRANCH ?= "release/2.36/master"
PV = "2.36"
-SRCREV_glibc ?= "3bd3c612e98a53ce60ed972f5cd2b90628b3cba5"
+SRCREV_glibc ?= "c399271c10bd00714504e8d4dfbec8aebf996dd4"
SRCREV_localedef ?= "794da69788cbf9bf57b59a852f9f11307663fa87"
GLIBC_GIT_URI ?= "git://sourceware.org/git/glibc.git"
diff --git a/poky/meta/recipes-core/glibc/glibc_2.36.bb b/poky/meta/recipes-core/glibc/glibc_2.36.bb
index 1cfa8101ef..45bc784b33 100644
--- a/poky/meta/recipes-core/glibc/glibc_2.36.bb
+++ b/poky/meta/recipes-core/glibc/glibc_2.36.bb
@@ -16,6 +16,9 @@ CVE_CHECK_IGNORE += "CVE-2019-1010022 CVE-2019-1010023 CVE-2019-1010024"
# Potential patch at https://sourceware.org/bugzilla/show_bug.cgi?id=22853
CVE_CHECK_IGNORE += "CVE-2019-1010025"
+# This has been integrated into the 2.36 branch as of c399271 so is now fixed
+CVE_CHECK_IGNORE += "CVE-2022-39046"
+
DEPENDS += "gperf-native bison-native"
NATIVESDKFIXES ?= ""
diff --git a/poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb b/poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb
index 2cdac20ce7..f3f2bb2da1 100644
--- a/poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb
+++ b/poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb
@@ -24,7 +24,7 @@ IMAGE_FSTYPES = "wic.vmdk wic.vhd wic.vhdx"
inherit core-image setuptools3
-SRCREV ?= "093398daf5000e69057aedfe8c9f8df2c4e837f3"
+SRCREV ?= "4f942c272d4417b5b719df25b80a6a6b54669a73"
SRC_URI = "git://git.yoctoproject.org/poky;branch=master \
file://Yocto_Build_Appliance.vmx \
file://Yocto_Build_Appliance.vmxf \
diff --git a/poky/meta/recipes-core/initscripts/init-system-helpers_1.64.bb b/poky/meta/recipes-core/initscripts/init-system-helpers_1.64.bb
index 22ddd6840f..663d60c6e0 100644
--- a/poky/meta/recipes-core/initscripts/init-system-helpers_1.64.bb
+++ b/poky/meta/recipes-core/initscripts/init-system-helpers_1.64.bb
@@ -18,6 +18,7 @@ LIC_FILES_CHKSUM = "file://debian/copyright;md5=c4ec20aa158fa9de26ee1accf78dcaae
SRCREV = "c440893051406c11f0a315058939657d5937be4f"
SRC_URI = "git://salsa.debian.org/debian/init-system-helpers.git;protocol=https;branch=master"
+UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+)+))(?!_exp)"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-core/libcgroup/libcgroup_3.0.0.bb b/poky/meta/recipes-core/libcgroup/libcgroup_3.0.0.bb
index f3e841246f..9937a17fb5 100644
--- a/poky/meta/recipes-core/libcgroup/libcgroup_3.0.0.bb
+++ b/poky/meta/recipes-core/libcgroup/libcgroup_3.0.0.bb
@@ -7,16 +7,16 @@ SECTION = "libs"
LICENSE = "LGPL-2.1-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=4d794c5d710e5b3547a6cc6a6609a641"
-inherit autotools pkgconfig
+inherit autotools pkgconfig github-releases
DEPENDS = "bison-native flex-native"
-SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/v3.0/${BP}.tar.gz \
+SRC_URI = "${GITHUB_BASE_URI}/download/v3.0/${BP}.tar.gz \
file://0001-api-Use-GNU-strerror_r-when-available.patch \
"
+UPSTREAM_CHECK_URI = "https://github.com/libcgroup/libcgroup/tags"
SRC_URI[sha256sum] = "8d284d896fca1c981b55850e92acd3ad9648a69227c028dda7ae3402af878edd"
-UPSTREAM_CHECK_URI = "https://github.com/libcgroup/libcgroup/releases/"
DEPENDS:append:libc-musl = " fts "
EXTRA_OEMAKE:append:libc-musl = " LIBS=-lfts"
diff --git a/poky/meta/recipes-core/libxml/libxml2/0001-Port-gentest.py-to-Python-3.patch b/poky/meta/recipes-core/libxml/libxml2/0001-Port-gentest.py-to-Python-3.patch
new file mode 100644
index 0000000000..c6567ac878
--- /dev/null
+++ b/poky/meta/recipes-core/libxml/libxml2/0001-Port-gentest.py-to-Python-3.patch
@@ -0,0 +1,814 @@
+From 2c20198b1ddb1bfb47269b8caf929ffb83748f78 Mon Sep 17 00:00:00 2001
+From: Nick Wellnhofer <wellnhofer@aevum.de>
+Date: Thu, 21 Apr 2022 00:45:58 +0200
+Subject: [PATCH] Port gentest.py to Python 3
+
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/libxml2/-/commit/343fc1421cdae097fa6c4cffeb1a065a40be6bbb]
+
+* fixes:
+
+make[1]: 'testReader' is up to date.
+ File "../libxml2-2.9.10/gentest.py", line 11
+ print "libxml2 python bindings not available, skipping testapi.c generation"
+ ^
+SyntaxError: Missing parentheses in call to 'print'. Did you mean print("libxml2 python bindings not available, skipping testapi.c generation")?
+make[1]: [Makefile:2078: testapi.c] Error 1 (ignored)
+
+...
+
+make[1]: 'testReader' is up to date.
+ File "../libxml2-2.9.10/gentest.py", line 271
+ return 1
+ ^
+TabError: inconsistent use of tabs and spaces in indentation
+make[1]: [Makefile:2078: testapi.c] Error 1 (ignored)
+
+...
+
+aarch64-oe-linux-gcc: error: testapi.c: No such file or directory
+aarch64-oe-linux-gcc: fatal error: no input files
+compilation terminated.
+make[1]: *** [Makefile:1275: testapi.o] Error 1
+
+But there is still a bit mystery why it worked before, because check-am
+calls gentest.py with $(PYTHON), so it ignores the shebang in the script
+and libxml2 is using python3native (through python3targetconfig.bbclass)
+so something like:
+
+libxml2/2.9.10-r0/recipe-sysroot-native/usr/bin/python3-native/python3 gentest.py
+
+But that still fails (now without SyntaxError) with:
+libxml2 python bindings not available, skipping testapi.c generation
+
+because we don't have dependency on libxml2-native (to provide libxml2
+python bindings form python3native) and exported PYTHON_SITE_PACKAGES
+might be useless (e.g. /usr/lib/python3.8/site-packages on Ubuntu-22.10
+which uses python 3.10 and there is no site-packages with libxml2)
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+
+---
+ gentest.py | 421 ++++++++++++++++++++++++++---------------------------
+ 1 file changed, 209 insertions(+), 212 deletions(-)
+
+diff --git a/gentest.py b/gentest.py
+index b6cd866..af15a4f 100755
+--- a/gentest.py
++++ b/gentest.py
+@@ -8,7 +8,7 @@ import string
+ try:
+ import libxml2
+ except:
+- print "libxml2 python bindings not available, skipping testapi.c generation"
++ print("libxml2 python bindings not available, skipping testapi.c generation")
+ sys.exit(0)
+
+ if len(sys.argv) > 1:
+@@ -227,7 +227,7 @@ extra_post_call = {
+ if (old != NULL) {
+ xmlUnlinkNode(old);
+ xmlFreeNode(old) ; old = NULL ; }
+- ret_val = NULL;""",
++\t ret_val = NULL;""",
+ "xmlTextMerge":
+ """if ((first != NULL) && (first->type != XML_TEXT_NODE)) {
+ xmlUnlinkNode(second);
+@@ -236,7 +236,7 @@ extra_post_call = {
+ """if ((ret_val != NULL) && (ret_val != ncname) &&
+ (ret_val != prefix) && (ret_val != memory))
+ xmlFree(ret_val);
+- ret_val = NULL;""",
++\t ret_val = NULL;""",
+ "xmlNewDocElementContent":
+ """xmlFreeDocElementContent(doc, ret_val); ret_val = NULL;""",
+ "xmlDictReference": "xmlDictFree(dict);",
+@@ -268,29 +268,29 @@ modules = []
+ def is_skipped_module(name):
+ for mod in skipped_modules:
+ if mod == name:
+- return 1
++ return 1
+ return 0
+
+ def is_skipped_function(name):
+ for fun in skipped_functions:
+ if fun == name:
+- return 1
++ return 1
+ # Do not test destructors
+- if string.find(name, 'Free') != -1:
++ if name.find('Free') != -1:
+ return 1
+ return 0
+
+ def is_skipped_memcheck(name):
+ for fun in skipped_memcheck:
+ if fun == name:
+- return 1
++ return 1
+ return 0
+
+ missing_types = {}
+ def add_missing_type(name, func):
+ try:
+ list = missing_types[name]
+- list.append(func)
++ list.append(func)
+ except:
+ missing_types[name] = [func]
+
+@@ -310,7 +310,7 @@ def add_missing_functions(name, module):
+ missing_functions_nr = missing_functions_nr + 1
+ try:
+ list = missing_functions[module]
+- list.append(name)
++ list.append(name)
+ except:
+ missing_functions[module] = [name]
+
+@@ -319,45 +319,45 @@ def add_missing_functions(name, module):
+ #
+
+ def type_convert(str, name, info, module, function, pos):
+-# res = string.replace(str, " ", " ")
+-# res = string.replace(str, " ", " ")
+-# res = string.replace(str, " ", " ")
+- res = string.replace(str, " *", "_ptr")
+-# res = string.replace(str, "*", "_ptr")
+- res = string.replace(res, " ", "_")
++# res = str.replace(" ", " ")
++# res = str.replace(" ", " ")
++# res = str.replace(" ", " ")
++ res = str.replace(" *", "_ptr")
++# res = str.replace("*", "_ptr")
++ res = res.replace(" ", "_")
+ if res == 'const_char_ptr':
+- if string.find(name, "file") != -1 or \
+- string.find(name, "uri") != -1 or \
+- string.find(name, "URI") != -1 or \
+- string.find(info, "filename") != -1 or \
+- string.find(info, "URI") != -1 or \
+- string.find(info, "URL") != -1:
+- if string.find(function, "Save") != -1 or \
+- string.find(function, "Create") != -1 or \
+- string.find(function, "Write") != -1 or \
+- string.find(function, "Fetch") != -1:
+- return('fileoutput')
+- return('filepath')
++ if name.find("file") != -1 or \
++ name.find("uri") != -1 or \
++ name.find("URI") != -1 or \
++ info.find("filename") != -1 or \
++ info.find("URI") != -1 or \
++ info.find("URL") != -1:
++ if function.find("Save") != -1 or \
++ function.find("Create") != -1 or \
++ function.find("Write") != -1 or \
++ function.find("Fetch") != -1:
++ return('fileoutput')
++ return('filepath')
+ if res == 'void_ptr':
+ if module == 'nanoftp' and name == 'ctx':
+- return('xmlNanoFTPCtxtPtr')
++ return('xmlNanoFTPCtxtPtr')
+ if function == 'xmlNanoFTPNewCtxt' or \
+- function == 'xmlNanoFTPConnectTo' or \
+- function == 'xmlNanoFTPOpen':
+- return('xmlNanoFTPCtxtPtr')
++ function == 'xmlNanoFTPConnectTo' or \
++ function == 'xmlNanoFTPOpen':
++ return('xmlNanoFTPCtxtPtr')
+ if module == 'nanohttp' and name == 'ctx':
+- return('xmlNanoHTTPCtxtPtr')
+- if function == 'xmlNanoHTTPMethod' or \
+- function == 'xmlNanoHTTPMethodRedir' or \
+- function == 'xmlNanoHTTPOpen' or \
+- function == 'xmlNanoHTTPOpenRedir':
+- return('xmlNanoHTTPCtxtPtr');
++ return('xmlNanoHTTPCtxtPtr')
++ if function == 'xmlNanoHTTPMethod' or \
++ function == 'xmlNanoHTTPMethodRedir' or \
++ function == 'xmlNanoHTTPOpen' or \
++ function == 'xmlNanoHTTPOpenRedir':
++ return('xmlNanoHTTPCtxtPtr');
+ if function == 'xmlIOHTTPOpen':
+- return('xmlNanoHTTPCtxtPtr')
+- if string.find(name, "data") != -1:
+- return('userdata')
+- if string.find(name, "user") != -1:
+- return('userdata')
++ return('xmlNanoHTTPCtxtPtr')
++ if name.find("data") != -1:
++ return('userdata')
++ if name.find("user") != -1:
++ return('userdata')
+ if res == 'xmlDoc_ptr':
+ res = 'xmlDocPtr'
+ if res == 'xmlNode_ptr':
+@@ -366,18 +366,18 @@ def type_convert(str, name, info, module, function, pos):
+ res = 'xmlDictPtr'
+ if res == 'xmlNodePtr' and pos != 0:
+ if (function == 'xmlAddChild' and pos == 2) or \
+- (function == 'xmlAddChildList' and pos == 2) or \
++ (function == 'xmlAddChildList' and pos == 2) or \
+ (function == 'xmlAddNextSibling' and pos == 2) or \
+ (function == 'xmlAddSibling' and pos == 2) or \
+ (function == 'xmlDocSetRootElement' and pos == 2) or \
+ (function == 'xmlReplaceNode' and pos == 2) or \
+ (function == 'xmlTextMerge') or \
+- (function == 'xmlAddPrevSibling' and pos == 2):
+- return('xmlNodePtr_in');
++ (function == 'xmlAddPrevSibling' and pos == 2):
++ return('xmlNodePtr_in');
+ if res == 'const xmlBufferPtr':
+ res = 'xmlBufferPtr'
+ if res == 'xmlChar_ptr' and name == 'name' and \
+- string.find(function, "EatName") != -1:
++ function.find("EatName") != -1:
+ return('eaten_name')
+ if res == 'void_ptr*':
+ res = 'void_ptr_ptr'
+@@ -393,7 +393,7 @@ def type_convert(str, name, info, module, function, pos):
+ res = 'debug_FILE_ptr';
+ if res == 'int' and name == 'options':
+ if module == 'parser' or module == 'xmlreader':
+- res = 'parseroptions'
++ res = 'parseroptions'
+
+ return res
+
+@@ -402,28 +402,28 @@ known_param_types = []
+ def is_known_param_type(name):
+ for type in known_param_types:
+ if type == name:
+- return 1
++ return 1
+ return name[-3:] == 'Ptr' or name[-4:] == '_ptr'
+
+ def generate_param_type(name, rtype):
+ global test
+ for type in known_param_types:
+ if type == name:
+- return
++ return
+ for type in generated_param_types:
+ if type == name:
+- return
++ return
+
+ if name[-3:] == 'Ptr' or name[-4:] == '_ptr':
+ if rtype[0:6] == 'const ':
+- crtype = rtype[6:]
+- else:
+- crtype = rtype
++ crtype = rtype[6:]
++ else:
++ crtype = rtype
+
+ define = 0
+- if modules_defines.has_key(module):
+- test.write("#ifdef %s\n" % (modules_defines[module]))
+- define = 1
++ if module in modules_defines:
++ test.write("#ifdef %s\n" % (modules_defines[module]))
++ define = 1
+ test.write("""
+ #define gen_nb_%s 1
+ static %s gen_%s(int no ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
+@@ -433,7 +433,7 @@ static void des_%s(int no ATTRIBUTE_UNUSED, %s val ATTRIBUTE_UNUSED, int nr ATTR
+ }
+ """ % (name, crtype, name, name, rtype))
+ if define == 1:
+- test.write("#endif\n\n")
++ test.write("#endif\n\n")
+ add_generated_param_type(name)
+
+ #
+@@ -445,7 +445,7 @@ known_return_types = []
+ def is_known_return_type(name):
+ for type in known_return_types:
+ if type == name:
+- return 1
++ return 1
+ return 0
+
+ #
+@@ -471,7 +471,7 @@ def compare_and_save():
+ try:
+ os.system("rm testapi.c; mv testapi.c.new testapi.c")
+ except:
+- os.system("mv testapi.c.new testapi.c")
++ os.system("mv testapi.c.new testapi.c")
+ print("Updated testapi.c")
+ else:
+ print("Generated testapi.c is identical")
+@@ -481,17 +481,17 @@ while line != "":
+ if line == "/* CUT HERE: everything below that line is generated */\n":
+ break;
+ if line[0:15] == "#define gen_nb_":
+- type = string.split(line[15:])[0]
+- known_param_types.append(type)
++ type = line[15:].split()[0]
++ known_param_types.append(type)
+ if line[0:19] == "static void desret_":
+- type = string.split(line[19:], '(')[0]
+- known_return_types.append(type)
++ type = line[19:].split('(')[0]
++ known_return_types.append(type)
+ test.write(line)
+ line = input.readline()
+ input.close()
+
+ if line == "":
+- print "Could not find the CUT marker in testapi.c skipping generation"
++ print("Could not find the CUT marker in testapi.c skipping generation")
+ test.close()
+ sys.exit(0)
+
+@@ -505,7 +505,7 @@ test.write("/* CUT HERE: everything below that line is generated */\n")
+ #
+ doc = libxml2.readFile(srcPref + 'doc/libxml2-api.xml', None, 0)
+ if doc == None:
+- print "Failed to load doc/libxml2-api.xml"
++ print("Failed to load doc/libxml2-api.xml")
+ sys.exit(1)
+ ctxt = doc.xpathNewContext()
+
+@@ -519,9 +519,9 @@ for arg in args:
+ mod = arg.xpathEval('string(../@file)')
+ func = arg.xpathEval('string(../@name)')
+ if (mod not in skipped_modules) and (func not in skipped_functions):
+- type = arg.xpathEval('string(@type)')
+- if not argtypes.has_key(type):
+- argtypes[type] = func
++ type = arg.xpathEval('string(@type)')
++ if type not in argtypes:
++ argtypes[type] = func
+
+ # similarly for return types
+ rettypes = {}
+@@ -531,8 +531,8 @@ for ret in rets:
+ func = ret.xpathEval('string(../@name)')
+ if (mod not in skipped_modules) and (func not in skipped_functions):
+ type = ret.xpathEval('string(@type)')
+- if not rettypes.has_key(type):
+- rettypes[type] = func
++ if type not in rettypes:
++ rettypes[type] = func
+
+ #
+ # Generate constructors and return type handling for all enums
+@@ -549,49 +549,49 @@ for enum in enums:
+ continue;
+ define = 0
+
+- if argtypes.has_key(name) and is_known_param_type(name) == 0:
+- values = ctxt.xpathEval("/api/symbols/enum[@type='%s']" % name)
+- i = 0
+- vals = []
+- for value in values:
+- vname = value.xpathEval('string(@name)')
+- if vname == None:
+- continue;
+- i = i + 1
+- if i >= 5:
+- break;
+- vals.append(vname)
+- if vals == []:
+- print "Didn't find any value for enum %s" % (name)
+- continue
+- if modules_defines.has_key(module):
+- test.write("#ifdef %s\n" % (modules_defines[module]))
+- define = 1
+- test.write("#define gen_nb_%s %d\n" % (name, len(vals)))
+- test.write("""static %s gen_%s(int no, int nr ATTRIBUTE_UNUSED) {\n""" %
+- (name, name))
+- i = 1
+- for value in vals:
+- test.write(" if (no == %d) return(%s);\n" % (i, value))
+- i = i + 1
+- test.write(""" return(0);
++ if (name in argtypes) and is_known_param_type(name) == 0:
++ values = ctxt.xpathEval("/api/symbols/enum[@type='%s']" % name)
++ i = 0
++ vals = []
++ for value in values:
++ vname = value.xpathEval('string(@name)')
++ if vname == None:
++ continue;
++ i = i + 1
++ if i >= 5:
++ break;
++ vals.append(vname)
++ if vals == []:
++ print("Didn't find any value for enum %s" % (name))
++ continue
++ if module in modules_defines:
++ test.write("#ifdef %s\n" % (modules_defines[module]))
++ define = 1
++ test.write("#define gen_nb_%s %d\n" % (name, len(vals)))
++ test.write("""static %s gen_%s(int no, int nr ATTRIBUTE_UNUSED) {\n""" %
++ (name, name))
++ i = 1
++ for value in vals:
++ test.write(" if (no == %d) return(%s);\n" % (i, value))
++ i = i + 1
++ test.write(""" return(0);
+ }
+
+ static void des_%s(int no ATTRIBUTE_UNUSED, %s val ATTRIBUTE_UNUSED, int nr ATTRIBUTE_UNUSED) {
+ }
+
+ """ % (name, name));
+- known_param_types.append(name)
++ known_param_types.append(name)
+
+ if (is_known_return_type(name) == 0) and (name in rettypes):
+- if define == 0 and modules_defines.has_key(module):
+- test.write("#ifdef %s\n" % (modules_defines[module]))
+- define = 1
++ if define == 0 and (module in modules_defines):
++ test.write("#ifdef %s\n" % (modules_defines[module]))
++ define = 1
+ test.write("""static void desret_%s(%s val ATTRIBUTE_UNUSED) {
+ }
+
+ """ % (name, name))
+- known_return_types.append(name)
++ known_return_types.append(name)
+ if define == 1:
+ test.write("#endif\n\n")
+
+@@ -615,9 +615,9 @@ for file in headers:
+ # do not test deprecated APIs
+ #
+ desc = file.xpathEval('string(description)')
+- if string.find(desc, 'DEPRECATED') != -1:
+- print "Skipping deprecated interface %s" % name
+- continue;
++ if desc.find('DEPRECATED') != -1:
++ print("Skipping deprecated interface %s" % name)
++ continue;
+
+ test.write("#include <libxml/%s.h>\n" % name)
+ modules.append(name)
+@@ -679,7 +679,7 @@ def generate_test(module, node):
+ # and store the information for the generation
+ #
+ try:
+- args = node.xpathEval("arg")
++ args = node.xpathEval("arg")
+ except:
+ args = []
+ t_args = []
+@@ -687,37 +687,37 @@ def generate_test(module, node):
+ for arg in args:
+ n = n + 1
+ rtype = arg.xpathEval("string(@type)")
+- if rtype == 'void':
+- break;
+- info = arg.xpathEval("string(@info)")
+- nam = arg.xpathEval("string(@name)")
++ if rtype == 'void':
++ break;
++ info = arg.xpathEval("string(@info)")
++ nam = arg.xpathEval("string(@name)")
+ type = type_convert(rtype, nam, info, module, name, n)
+- if is_known_param_type(type) == 0:
+- add_missing_type(type, name);
+- no_gen = 1
++ if is_known_param_type(type) == 0:
++ add_missing_type(type, name);
++ no_gen = 1
+ if (type[-3:] == 'Ptr' or type[-4:] == '_ptr') and \
+- rtype[0:6] == 'const ':
+- crtype = rtype[6:]
+- else:
+- crtype = rtype
+- t_args.append((nam, type, rtype, crtype, info))
++ rtype[0:6] == 'const ':
++ crtype = rtype[6:]
++ else:
++ crtype = rtype
++ t_args.append((nam, type, rtype, crtype, info))
+
+ try:
+- rets = node.xpathEval("return")
++ rets = node.xpathEval("return")
+ except:
+ rets = []
+ t_ret = None
+ for ret in rets:
+ rtype = ret.xpathEval("string(@type)")
+- info = ret.xpathEval("string(@info)")
++ info = ret.xpathEval("string(@info)")
+ type = type_convert(rtype, 'return', info, module, name, 0)
+- if rtype == 'void':
+- break
+- if is_known_return_type(type) == 0:
+- add_missing_type(type, name);
+- no_gen = 1
+- t_ret = (type, rtype, info)
+- break
++ if rtype == 'void':
++ break
++ if is_known_return_type(type) == 0:
++ add_missing_type(type, name);
++ no_gen = 1
++ t_ret = (type, rtype, info)
++ break
+
+ if no_gen == 0:
+ for t_arg in t_args:
+@@ -733,7 +733,7 @@ test_%s(void) {
+
+ if no_gen == 1:
+ add_missing_functions(name, module)
+- test.write("""
++ test.write("""
+ /* missing type support */
+ return(test_ret);
+ }
+@@ -742,22 +742,22 @@ test_%s(void) {
+ return
+
+ try:
+- conds = node.xpathEval("cond")
+- for cond in conds:
+- test.write("#if %s\n" % (cond.get_content()))
+- nb_cond = nb_cond + 1
++ conds = node.xpathEval("cond")
++ for cond in conds:
++ test.write("#if %s\n" % (cond.get_content()))
++ nb_cond = nb_cond + 1
+ except:
+ pass
+
+ define = 0
+- if function_defines.has_key(name):
++ if name in function_defines:
+ test.write("#ifdef %s\n" % (function_defines[name]))
+- define = 1
++ define = 1
+
+ # Declare the memory usage counter
+ no_mem = is_skipped_memcheck(name)
+ if no_mem == 0:
+- test.write(" int mem_base;\n");
++ test.write(" int mem_base;\n");
+
+ # Declare the return value
+ if t_ret != None:
+@@ -766,29 +766,29 @@ test_%s(void) {
+ # Declare the arguments
+ for arg in t_args:
+ (nam, type, rtype, crtype, info) = arg;
+- # add declaration
+- test.write(" %s %s; /* %s */\n" % (crtype, nam, info))
+- test.write(" int n_%s;\n" % (nam))
++ # add declaration
++ test.write(" %s %s; /* %s */\n" % (crtype, nam, info))
++ test.write(" int n_%s;\n" % (nam))
+ test.write("\n")
+
+ # Cascade loop on of each argument list of values
+ for arg in t_args:
+ (nam, type, rtype, crtype, info) = arg;
+- #
+- test.write(" for (n_%s = 0;n_%s < gen_nb_%s;n_%s++) {\n" % (
+- nam, nam, type, nam))
++ #
++ test.write(" for (n_%s = 0;n_%s < gen_nb_%s;n_%s++) {\n" % (
++ nam, nam, type, nam))
+
+ # log the memory usage
+ if no_mem == 0:
+- test.write(" mem_base = xmlMemBlocks();\n");
++ test.write(" mem_base = xmlMemBlocks();\n");
+
+ # prepare the call
+ i = 0;
+ for arg in t_args:
+ (nam, type, rtype, crtype, info) = arg;
+- #
+- test.write(" %s = gen_%s(n_%s, %d);\n" % (nam, type, nam, i))
+- i = i + 1;
++ #
++ test.write(" %s = gen_%s(n_%s, %d);\n" % (nam, type, nam, i))
++ i = i + 1;
+
+ # add checks to avoid out-of-bounds array access
+ i = 0;
+@@ -797,7 +797,7 @@ test_%s(void) {
+ # assume that "size", "len", and "start" parameters apply to either
+ # the nearest preceding or following char pointer
+ if type == "int" and (nam == "size" or nam == "len" or nam == "start"):
+- for j in range(i - 1, -1, -1) + range(i + 1, len(t_args)):
++ for j in (*range(i - 1, -1, -1), *range(i + 1, len(t_args))):
+ (bnam, btype) = t_args[j][:2]
+ if btype == "const_char_ptr" or btype == "const_xmlChar_ptr":
+ test.write(
+@@ -806,42 +806,42 @@ test_%s(void) {
+ " continue;\n"
+ % (bnam, nam, bnam))
+ break
+- i = i + 1;
++ i = i + 1;
+
+ # do the call, and clanup the result
+- if extra_pre_call.has_key(name):
+- test.write(" %s\n"% (extra_pre_call[name]))
++ if name in extra_pre_call:
++ test.write(" %s\n"% (extra_pre_call[name]))
+ if t_ret != None:
+- test.write("\n ret_val = %s(" % (name))
+- need = 0
+- for arg in t_args:
+- (nam, type, rtype, crtype, info) = arg
+- if need:
+- test.write(", ")
+- else:
+- need = 1
+- if rtype != crtype:
+- test.write("(%s)" % rtype)
+- test.write("%s" % nam);
+- test.write(");\n")
+- if extra_post_call.has_key(name):
+- test.write(" %s\n"% (extra_post_call[name]))
+- test.write(" desret_%s(ret_val);\n" % t_ret[0])
++ test.write("\n ret_val = %s(" % (name))
++ need = 0
++ for arg in t_args:
++ (nam, type, rtype, crtype, info) = arg
++ if need:
++ test.write(", ")
++ else:
++ need = 1
++ if rtype != crtype:
++ test.write("(%s)" % rtype)
++ test.write("%s" % nam);
++ test.write(");\n")
++ if name in extra_post_call:
++ test.write(" %s\n"% (extra_post_call[name]))
++ test.write(" desret_%s(ret_val);\n" % t_ret[0])
+ else:
+- test.write("\n %s(" % (name));
+- need = 0;
+- for arg in t_args:
+- (nam, type, rtype, crtype, info) = arg;
+- if need:
+- test.write(", ")
+- else:
+- need = 1
+- if rtype != crtype:
+- test.write("(%s)" % rtype)
+- test.write("%s" % nam)
+- test.write(");\n")
+- if extra_post_call.has_key(name):
+- test.write(" %s\n"% (extra_post_call[name]))
++ test.write("\n %s(" % (name));
++ need = 0;
++ for arg in t_args:
++ (nam, type, rtype, crtype, info) = arg;
++ if need:
++ test.write(", ")
++ else:
++ need = 1
++ if rtype != crtype:
++ test.write("(%s)" % rtype)
++ test.write("%s" % nam)
++ test.write(");\n")
++ if name in extra_post_call:
++ test.write(" %s\n"% (extra_post_call[name]))
+
+ test.write(" call_tests++;\n");
+
+@@ -849,32 +849,32 @@ test_%s(void) {
+ i = 0;
+ for arg in t_args:
+ (nam, type, rtype, crtype, info) = arg;
+- # This is a hack to prevent generating a destructor for the
+- # 'input' argument in xmlTextReaderSetup. There should be
+- # a better, more generic way to do this!
+- if string.find(info, 'destroy') == -1:
+- test.write(" des_%s(n_%s, " % (type, nam))
+- if rtype != crtype:
+- test.write("(%s)" % rtype)
+- test.write("%s, %d);\n" % (nam, i))
+- i = i + 1;
++ # This is a hack to prevent generating a destructor for the
++ # 'input' argument in xmlTextReaderSetup. There should be
++ # a better, more generic way to do this!
++ if info.find('destroy') == -1:
++ test.write(" des_%s(n_%s, " % (type, nam))
++ if rtype != crtype:
++ test.write("(%s)" % rtype)
++ test.write("%s, %d);\n" % (nam, i))
++ i = i + 1;
+
+ test.write(" xmlResetLastError();\n");
+ # Check the memory usage
+ if no_mem == 0:
+- test.write(""" if (mem_base != xmlMemBlocks()) {
++ test.write(""" if (mem_base != xmlMemBlocks()) {
+ printf("Leak of %%d blocks found in %s",
+- xmlMemBlocks() - mem_base);
+- test_ret++;
++\t xmlMemBlocks() - mem_base);
++\t test_ret++;
+ """ % (name));
+- for arg in t_args:
+- (nam, type, rtype, crtype, info) = arg;
+- test.write(""" printf(" %%d", n_%s);\n""" % (nam))
+- test.write(""" printf("\\n");\n""")
+- test.write(" }\n")
++ for arg in t_args:
++ (nam, type, rtype, crtype, info) = arg;
++ test.write(""" printf(" %%d", n_%s);\n""" % (nam))
++ test.write(""" printf("\\n");\n""")
++ test.write(" }\n")
+
+ for arg in t_args:
+- test.write(" }\n")
++ test.write(" }\n")
+
+ test.write(" function_tests++;\n")
+ #
+@@ -882,7 +882,7 @@ test_%s(void) {
+ #
+ while nb_cond > 0:
+ test.write("#endif\n")
+- nb_cond = nb_cond -1
++ nb_cond = nb_cond -1
+ if define == 1:
+ test.write("#endif\n")
+
+@@ -900,10 +900,10 @@ test_%s(void) {
+ for module in modules:
+ # gather all the functions exported by that module
+ try:
+- functions = ctxt.xpathEval("/api/symbols/function[@file='%s']" % (module))
++ functions = ctxt.xpathEval("/api/symbols/function[@file='%s']" % (module))
+ except:
+- print "Failed to gather functions from module %s" % (module)
+- continue;
++ print("Failed to gather functions from module %s" % (module))
++ continue;
+
+ # iterate over all functions in the module generating the test
+ i = 0
+@@ -923,14 +923,14 @@ test_%s(void) {
+ # iterate over all functions in the module generating the call
+ for function in functions:
+ name = function.xpathEval('string(@name)')
+- if is_skipped_function(name):
+- continue
+- test.write(" test_ret += test_%s();\n" % (name))
++ if is_skipped_function(name):
++ continue
++ test.write(" test_ret += test_%s();\n" % (name))
+
+ # footer
+ test.write("""
+ if (test_ret != 0)
+- printf("Module %s: %%d errors\\n", test_ret);
++\tprintf("Module %s: %%d errors\\n", test_ret);
+ return(test_ret);
+ }
+ """ % (module))
+@@ -948,7 +948,7 @@ test.write(""" return(0);
+ }
+ """);
+
+-print "Generated test for %d modules and %d functions" %(len(modules), nb_tests)
++print("Generated test for %d modules and %d functions" %(len(modules), nb_tests))
+
+ compare_and_save()
+
+@@ -960,11 +960,8 @@ for missing in missing_types.keys():
+ n = len(missing_types[missing])
+ missing_list.append((n, missing))
+
+-def compare_missing(a, b):
+- return b[0] - a[0]
+-
+-missing_list.sort(compare_missing)
+-print "Missing support for %d functions and %d types see missing.lst" % (missing_functions_nr, len(missing_list))
++missing_list.sort(key=lambda a: a[0])
++print("Missing support for %d functions and %d types see missing.lst" % (missing_functions_nr, len(missing_list)))
+ lst = open("missing.lst", "w")
+ lst.write("Missing support for %d types" % (len(missing_list)))
+ lst.write("\n")
+@@ -974,9 +971,9 @@ for miss in missing_list:
+ for n in missing_types[miss[1]]:
+ i = i + 1
+ if i > 5:
+- lst.write(" ...")
+- break
+- lst.write(" %s" % (n))
++ lst.write(" ...")
++ break
++ lst.write(" %s" % (n))
+ lst.write("\n")
+ lst.write("\n")
+ lst.write("\n")
diff --git a/poky/meta/recipes-core/libxml/libxml2_2.9.14.bb b/poky/meta/recipes-core/libxml/libxml2_2.9.14.bb
index d803db8672..a2ed8d71bc 100644
--- a/poky/meta/recipes-core/libxml/libxml2_2.9.14.bb
+++ b/poky/meta/recipes-core/libxml/libxml2_2.9.14.bb
@@ -22,6 +22,7 @@ SRC_URI += "http://www.w3.org/XML/Test/xmlts20080827.tar.gz;subdir=${BP};name=te
file://fix-execution-of-ptests.patch \
file://remove-fuzz-from-ptests.patch \
file://libxml-m4-use-pkgconfig.patch \
+ file://0001-Port-gentest.py-to-Python-3.patch \
"
SRC_URI[archive.sha256sum] = "60d74a257d1ccec0475e749cba2f21559e48139efba6ff28224357c7c798dfee"
@@ -82,6 +83,16 @@ do_configure:prepend () {
}
do_compile_ptest() {
+ # Make sure that testapi.c is newer than gentests.py, because
+ # with reproducible builds, they will both get e.g. Jan 1 1970
+ # modification time from SOURCE_DATE_EPOCH and then check-am
+ # might try to rebuild_testapi, which will fail even with
+ # 0001-Port-gentest.py-to-Python-3.patch, because it needs
+ # libxml2 module (libxml2-native dependency and correctly
+ # set PYTHON_SITE_PACKAGES), it's easier to
+ # just rely on pre-generated testapi.c from the release
+ touch ${S}/testapi.c
+
oe_runmake check-am
}
@@ -110,7 +121,8 @@ do_install:append:class-native () {
# Docs are not needed in the native case
rm ${D}${datadir}/gtk-doc -rf
- create_wrapper ${D}${bindir}/xmllint XML_CATALOG_FILES=${sysconfdir}/xml/catalog
+ create_wrapper ${D}${bindir}/xmllint 'XML_CATALOG_FILES=${XML_CATALOG_FILES:-${sysconfdir}/xml/catalog}'
}
+do_install[vardepsexclude] += "XML_CATALOG_FILES:-${sysconfdir}/xml/catalog"
BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-core/musl/gcompat/0001-auxv-new-module.patch b/poky/meta/recipes-core/musl/gcompat/0001-auxv-new-module.patch
new file mode 100644
index 0000000000..ee292f3841
--- /dev/null
+++ b/poky/meta/recipes-core/musl/gcompat/0001-auxv-new-module.patch
@@ -0,0 +1,59 @@
+From aecd42801904462501a890d173648e4e826eda19 Mon Sep 17 00:00:00 2001
+From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
+Date: Sat, 23 Oct 2021 23:29:40 -0500
+Subject: [PATCH] auxv: new module
+
+Adds `__getauxval` wrapper, needed for Parallels Tools GUI installer.
+
+Upstream-Status: Submitted [https://git.adelielinux.org/adelie/gcompat/-/commit/e860a38a88c7ea148ee15976136a1f83ea13f8e0]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ CHANGELOG.rst | 5 +++++
+ Makefile | 1 +
+ libgcompat/auxv.c | 6 ++++++
+ 3 files changed, 12 insertions(+)
+ create mode 100644 libgcompat/auxv.c
+
+diff --git a/CHANGELOG.rst b/CHANGELOG.rst
+index ce6859b..c3a9cee 100644
+--- a/CHANGELOG.rst
++++ b/CHANGELOG.rst
+@@ -11,6 +11,11 @@
+ 1.1 (202?-??-??)
+ ================
+
++auxv
++----
++
++* Add __getauxval wrapper for getauxval.
++
+ locale
+ ------
+
+diff --git a/Makefile b/Makefile
+index cbb7634..1893cc1 100644
+--- a/Makefile
++++ b/Makefile
+@@ -2,6 +2,7 @@ LIBGCOMPAT_INCLUDE = \
+ libgcompat/alias.h \
+ libgcompat/internal.h
+ LIBGCOMPAT_SRC = \
++ libgcompat/auxv.c \
+ libgcompat/ctype.c \
+ libgcompat/cxx_thread.c \
+ libgcompat/dlfcn.c \
+diff --git a/libgcompat/auxv.c b/libgcompat/auxv.c
+new file mode 100644
+index 0000000..01de376
+--- /dev/null
++++ b/libgcompat/auxv.c
+@@ -0,0 +1,6 @@
++#include <sys/auxv.h> /* getauxval */
++
++unsigned long __getauxval(unsigned long value)
++{
++ return getauxval(value);
++}
+--
+2.37.3
+
diff --git a/poky/meta/recipes-core/musl/gcompat_git.bb b/poky/meta/recipes-core/musl/gcompat_git.bb
index b051e43b6c..11f3c58769 100644
--- a/poky/meta/recipes-core/musl/gcompat_git.bb
+++ b/poky/meta/recipes-core/musl/gcompat_git.bb
@@ -8,12 +8,13 @@ LICENSE = "NCSA"
LIC_FILES_CHKSUM = "file://LICENSE;md5=eb33ef4af05a9c7602843afb7adfe792"
SRC_URI = "git://git.adelielinux.org/adelie/gcompat.git;protocol=https;branch=current \
- "
+ file://0001-auxv-new-module.patch \
+ "
SRC_URI:append:powerpc = "\
file://0001-make-Static-PIE-does-not-work-on-musl-ppc.patch \
"
PV = "1.0.0+1.1+git${SRCPV}"
-SRCREV = "4d6a5156a6eb7f56b30d93853a872e36dadde81b"
+SRCREV = "c6921a1aa454bb87671f9bd1ecfe47d80d1620aa"
S = "${WORKDIR}/git"
@@ -42,6 +43,8 @@ do_install () {
install -d ${D}${nonarch_base_libdir}${SITEINFO_BITS}
ln -rs ${D}${GLIBC_LDSO} ${D}${nonarch_base_libdir}${SITEINFO_BITS}/`basename ${GLIBC_LDSO}`
fi
+ install -d ${D}${libdir}
+ ln -sf ${base_libdir}/libgcompat.so.0 ${D}${libdir}/libgcompat.so
}
FILES:${PN} += "${nonarch_base_libdir}${SITEINFO_BITS}"
diff --git a/poky/meta/recipes-core/systemd/systemd-systemctl/systemctl b/poky/meta/recipes-core/systemd/systemd-systemctl/systemctl
index 6d19666d82..cddae75a06 100755
--- a/poky/meta/recipes-core/systemd/systemd-systemctl/systemctl
+++ b/poky/meta/recipes-core/systemd/systemd-systemctl/systemctl
@@ -26,6 +26,9 @@ locations = list()
class SystemdFile():
"""Class representing a single systemd configuration file"""
+
+ _clearable_keys = ['WantedBy']
+
def __init__(self, root, path, instance_unit_name):
self.sections = dict()
self._parse(root, path)
@@ -80,6 +83,14 @@ class SystemdFile():
v = m.group('value')
if k not in section:
section[k] = list()
+
+ # If we come across a "key=" line for a "clearable key", then
+ # forget all preceding assignments. This works because we are
+ # processing files in correct parse order.
+ if k in self._clearable_keys and not v:
+ del section[k]
+ continue
+
section[k].extend(v.split())
def get(self, section, prop):
diff --git a/poky/meta/recipes-core/systemd/systemd/00-create-volatile.conf b/poky/meta/recipes-core/systemd/systemd/00-create-volatile.conf
index 87cbe1e7d3..c4277221a2 100644
--- a/poky/meta/recipes-core/systemd/systemd/00-create-volatile.conf
+++ b/poky/meta/recipes-core/systemd/systemd/00-create-volatile.conf
@@ -3,5 +3,6 @@
# inside /var/log.
+d /run/lock 1777 - - -
d /var/volatile/log - - - -
d /var/volatile/tmp 1777 - -
diff --git a/poky/meta/recipes-core/systemd/systemd_251.4.bb b/poky/meta/recipes-core/systemd/systemd_251.4.bb
index 8497e24af9..910ea71bf6 100644
--- a/poky/meta/recipes-core/systemd/systemd_251.4.bb
+++ b/poky/meta/recipes-core/systemd/systemd_251.4.bb
@@ -163,6 +163,7 @@ PACKAGECONFIG[manpages] = "-Dman=true,-Dman=false,libxslt-native xmlto-native do
PACKAGECONFIG[microhttpd] = "-Dmicrohttpd=true,-Dmicrohttpd=false,libmicrohttpd"
PACKAGECONFIG[myhostname] = "-Dnss-myhostname=true,-Dnss-myhostname=false,,libnss-myhostname"
PACKAGECONFIG[networkd] = "-Dnetworkd=true,-Dnetworkd=false"
+PACKAGECONFIG[no-dns-fallback] = "-Ddns-servers="
PACKAGECONFIG[nss] = "-Dnss-systemd=true,-Dnss-systemd=false"
PACKAGECONFIG[nss-mymachines] = "-Dnss-mymachines=true,-Dnss-mymachines=false"
PACKAGECONFIG[nss-resolve] = "-Dnss-resolve=true,-Dnss-resolve=false"
diff --git a/poky/meta/recipes-core/udev/eudev_3.2.11.bb b/poky/meta/recipes-core/udev/eudev_3.2.11.bb
index bc2c77de89..eba36c2f91 100644
--- a/poky/meta/recipes-core/udev/eudev_3.2.11.bb
+++ b/poky/meta/recipes-core/udev/eudev_3.2.11.bb
@@ -9,7 +9,7 @@ DEPENDS = "gperf-native"
PROVIDES = "udev"
-SRC_URI = "https://github.com/eudev-project/${BPN}/releases/download/v${PV}/${BP}.tar.gz \
+SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BP}.tar.gz \
file://init \
file://local.rules \
file://0001-build-Remove-dead-g-i-r-configuration.patch \
@@ -17,10 +17,9 @@ SRC_URI = "https://github.com/eudev-project/${BPN}/releases/download/v${PV}/${BP
SRC_URI[sha256sum] = "19847cafec67897da855fde56f9dc7d92e21c50e450aa79068a7e704ed44558b"
-UPSTREAM_CHECK_URI = "https://github.com/eudev-project/eudev/releases"
-UPSTREAM_CHECK_REGEX = "eudev-(?P<pver>\d+(\.\d+)+)\.tar"
+GITHUB_BASE_URI = "https://github.com/eudev-project/eudev/releases"
-inherit autotools update-rc.d qemu pkgconfig features_check manpages
+inherit autotools update-rc.d qemu pkgconfig features_check manpages github-releases
CONFLICT_DISTRO_FEATURES = "systemd"
diff --git a/poky/meta/recipes-devtools/apt/apt/0001-typecast-time_t-and-suseconds_t-from-std-chrono.patch b/poky/meta/recipes-devtools/apt/apt/0001-typecast-time_t-and-suseconds_t-from-std-chrono.patch
new file mode 100644
index 0000000000..fc3509d336
--- /dev/null
+++ b/poky/meta/recipes-devtools/apt/apt/0001-typecast-time_t-and-suseconds_t-from-std-chrono.patch
@@ -0,0 +1,64 @@
+From b7a1a4d3259557f2587f7d5d47502691d94c21c2 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 16 Sep 2022 20:00:30 -0700
+Subject: [PATCH 1/2] typecast time_t and suseconds_t from std::chrono
+
+This fixes build on some architectures like mips
+progress.cc:125:31: error: non-constant-expression cannot be narrowed from type 'std::chrono::duration<long long>::rep' (aka 'long long') to '__time_t' (aka 'long') in initializer list [-Wc++11-narrowing]
+ struct timeval NowTime = { Now_sec.count(), Now_usec.count() };
+
+Upstream-Status: Submitted [https://salsa.debian.org/apt-team/apt/-/merge_requests/259]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ apt-pkg/acquire.cc | 4 ++--
+ apt-pkg/contrib/progress.cc | 2 +-
+ ftparchive/apt-ftparchive.cc | 2 +-
+ 3 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/apt-pkg/acquire.cc b/apt-pkg/acquire.cc
+index 100ccde..dd0624a 100644
+--- a/apt-pkg/acquire.cc
++++ b/apt-pkg/acquire.cc
+@@ -53,11 +53,11 @@
+ using namespace std;
+
+ // helper to convert time_point to a timeval
+-static struct timeval SteadyDurationToTimeVal(std::chrono::steady_clock::duration Time)
++constexpr struct timeval SteadyDurationToTimeVal(std::chrono::steady_clock::duration Time)
+ {
+ auto const Time_sec = std::chrono::duration_cast<std::chrono::seconds>(Time);
+ auto const Time_usec = std::chrono::duration_cast<std::chrono::microseconds>(Time - Time_sec);
+- return {Time_sec.count(), Time_usec.count()};
++ return timeval{static_cast<time_t>(Time_sec.count()), static_cast<suseconds_t>(Time_usec.count())};
+ }
+
+ std::string pkgAcquire::URIEncode(std::string const &part) /*{{{*/
+diff --git a/apt-pkg/contrib/progress.cc b/apt-pkg/contrib/progress.cc
+index 03f88d4..eb688b9 100644
+--- a/apt-pkg/contrib/progress.cc
++++ b/apt-pkg/contrib/progress.cc
+@@ -122,7 +122,7 @@ bool OpProgress::CheckChange(float Interval)
+ auto const Now = std::chrono::steady_clock::now().time_since_epoch();
+ auto const Now_sec = std::chrono::duration_cast<std::chrono::seconds>(Now);
+ auto const Now_usec = std::chrono::duration_cast<std::chrono::microseconds>(Now - Now_sec);
+- struct timeval NowTime = { Now_sec.count(), Now_usec.count() };
++ struct timeval NowTime = { static_cast<time_t>(Now_sec.count()), static_cast<suseconds_t>(Now_usec.count()) };
+
+ std::chrono::duration<decltype(Interval)> Delta =
+ std::chrono::seconds(NowTime.tv_sec - LastTime.tv_sec) +
+diff --git a/ftparchive/apt-ftparchive.cc b/ftparchive/apt-ftparchive.cc
+index 56fdc22..0a253b1 100644
+--- a/ftparchive/apt-ftparchive.cc
++++ b/ftparchive/apt-ftparchive.cc
+@@ -58,7 +58,7 @@ static struct timeval GetTimevalFromSteadyClock() /*{{{*/
+ auto const Time = std::chrono::steady_clock::now().time_since_epoch();
+ auto const Time_sec = std::chrono::duration_cast<std::chrono::seconds>(Time);
+ auto const Time_usec = std::chrono::duration_cast<std::chrono::microseconds>(Time - Time_sec);
+- return { Time_sec.count(), Time_usec.count() };
++ return { static_cast<time_t>(Time_sec.count()), static_cast<suseconds_t>(Time_usec.count()) };
+ }
+ /*}}}*/
+ static auto GetTimeDeltaSince(struct timeval StartTime) /*{{{*/
+--
+2.37.3
+
diff --git a/poky/meta/recipes-devtools/apt/apt/0002-interactive-helper-Undefine-_FORTIFY_SOURCE.patch b/poky/meta/recipes-devtools/apt/apt/0002-interactive-helper-Undefine-_FORTIFY_SOURCE.patch
new file mode 100644
index 0000000000..18c4641b22
--- /dev/null
+++ b/poky/meta/recipes-devtools/apt/apt/0002-interactive-helper-Undefine-_FORTIFY_SOURCE.patch
@@ -0,0 +1,27 @@
+From 891076c2cf4298b5d587545497f4831f0d21caa1 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 16 Sep 2022 20:04:43 -0700
+Subject: [PATCH 2/2] interactive-helper: Undefine _FORTIFY_SOURCE
+
+This ensures that it compiles when clang compiler is passing
+-DFORTIFY_SOURCES=2
+
+Upstream-Status: Submitted [https://salsa.debian.org/apt-team/apt/-/merge_requests/259]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ test/interactive-helper/libnoprofile.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/test/interactive-helper/libnoprofile.c b/test/interactive-helper/libnoprofile.c
+index f11b898..b26ec2a 100644
+--- a/test/interactive-helper/libnoprofile.c
++++ b/test/interactive-helper/libnoprofile.c
+@@ -1,4 +1,5 @@
+ #define _GNU_SOURCE
++#undef _FORTIFY_SOURCE
+ #include <stdarg.h>
+ #include <stdlib.h>
+ #include <string.h>
+--
+2.37.3
+
diff --git a/poky/meta/recipes-devtools/apt/apt_2.4.5.bb b/poky/meta/recipes-devtools/apt/apt_2.4.5.bb
index 564bdeec41..4b9f804039 100644
--- a/poky/meta/recipes-devtools/apt/apt_2.4.5.bb
+++ b/poky/meta/recipes-devtools/apt/apt_2.4.5.bb
@@ -14,6 +14,8 @@ SRC_URI = "${DEBIAN_MIRROR}/main/a/apt/${BPN}_${PV}.tar.xz \
file://0001-Hide-fstatat64-and-prlimit64-defines-on-musl.patch \
file://0001-aptwebserver.cc-Include-array.patch \
file://0001-Remove-using-std-binary_function.patch \
+ file://0001-typecast-time_t-and-suseconds_t-from-std-chrono.patch \
+ file://0002-interactive-helper-Undefine-_FORTIFY_SOURCE.patch \
"
SRC_URI:append:class-native = " \
diff --git a/poky/meta/recipes-devtools/autoconf-archive/autoconf-archive_2022.02.11.bb b/poky/meta/recipes-devtools/autoconf-archive/autoconf-archive_2022.09.03.bb
index 47bf2380f0..6595ac98ba 100644
--- a/poky/meta/recipes-devtools/autoconf-archive/autoconf-archive_2022.02.11.bb
+++ b/poky/meta/recipes-devtools/autoconf-archive/autoconf-archive_2022.09.03.bb
@@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=11cc2d3ee574f9d6b7ee797bdce4d423 \
file://COPYING.EXCEPTION;md5=fdef168ebff3bc2f13664c365a5fb515"
SRC_URI = "${GNU_MIRROR}/${BPN}/${BPN}-${PV}.tar.xz"
-SRC_URI[sha256sum] = "78a61b611e2eeb55a89e0398e0ce387bcaf57fe2dd53c6fe427130f777ad1e8c"
+SRC_URI[sha256sum] = "e07454f00d8cae7907bed42d0747798927809947684d94c37207a4d63a32f423"
inherit autotools allarch texinfo
diff --git a/poky/meta/recipes-devtools/autoconf/autoconf/0001-Port-to-compilers-that-moan-about-K-R-func-decls.patch b/poky/meta/recipes-devtools/autoconf/autoconf/0001-Port-to-compilers-that-moan-about-K-R-func-decls.patch
new file mode 100644
index 0000000000..4f15bf96c3
--- /dev/null
+++ b/poky/meta/recipes-devtools/autoconf/autoconf/0001-Port-to-compilers-that-moan-about-K-R-func-decls.patch
@@ -0,0 +1,138 @@
+From 7a3bbca81b803ba116b83c82de378e840cc35f81 Mon Sep 17 00:00:00 2001
+From: Paul Eggert <eggert@cs.ucla.edu>
+Date: Thu, 1 Sep 2022 16:19:50 -0500
+Subject: [PATCH] Port to compilers that moan about K&R func decls
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+* lib/autoconf/c.m4 (AC_LANG_CALL, AC_LANG_FUNC_LINK_TRY):
+Use '(void)' rather than '()' in function prototypes, as the latter
+provokes fatal errors in some compilers nowadays.
+* lib/autoconf/functions.m4 (AC_FUNC_STRTOD):
+* tests/fortran.at (AC_F77_DUMMY_MAIN usage):
+* tests/semantics.at (AC_CHECK_DECLS):
+Don’t use () in a function decl.
+
+Upstream-Status: Backport [https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=8b5e2016c7ed2d67f31b03a3d2e361858ff5299b]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ doc/autoconf.texi | 7 +++----
+ lib/autoconf/c.m4 | 6 +++---
+ lib/autoconf/functions.m4 | 3 ---
+ tests/fortran.at | 8 ++++----
+ tests/semantics.at | 2 +-
+ 5 files changed, 11 insertions(+), 15 deletions(-)
+
+--- a/doc/autoconf.texi
++++ b/doc/autoconf.texi
+@@ -5465,9 +5465,7 @@ the @samp{#undef malloc}):
+ #include <config.h>
+ #undef malloc
+
+-#include <sys/types.h>
+-
+-void *malloc ();
++#include <stdlib.h>
+
+ /* Allocate an N-byte block of memory from the heap.
+ If N is zero, allocate a 1-byte block. */
+@@ -8295,7 +8293,7 @@ needed:
+ # ifdef __cplusplus
+ extern "C"
+ # endif
+- int F77_DUMMY_MAIN () @{ return 1; @}
++ int F77_DUMMY_MAIN (void) @{ return 1; @}
+ #endif
+ @end example
+
+--- a/lib/autoconf/c.m4
++++ b/lib/autoconf/c.m4
+@@ -127,7 +127,7 @@ m4_if([$2], [main], ,
+ [/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+-char $2 ();])], [return $2 ();])])
++char $2 (void);])], [return $2 ();])])
+
+
+ # AC_LANG_FUNC_LINK_TRY(C)(FUNCTION)
+@@ -151,7 +151,7 @@ m4_define([AC_LANG_FUNC_LINK_TRY(C)],
+ #define $1 innocuous_$1
+
+ /* System header to define __stub macros and hopefully few prototypes,
+- which can conflict with char $1 (); below. */
++ which can conflict with char $1 (void); below. */
+
+ #include <limits.h>
+ #undef $1
+@@ -162,7 +162,7 @@ m4_define([AC_LANG_FUNC_LINK_TRY(C)],
+ #ifdef __cplusplus
+ extern "C"
+ #endif
+-char $1 ();
++char $1 (void);
+ /* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+--- a/lib/autoconf/functions.m4
++++ b/lib/autoconf/functions.m4
+@@ -1601,9 +1601,6 @@ AC_DEFUN([AC_FUNC_STRTOD],
+ AC_CACHE_CHECK(for working strtod, ac_cv_func_strtod,
+ [AC_RUN_IFELSE([AC_LANG_SOURCE([[
+ ]AC_INCLUDES_DEFAULT[
+-#ifndef strtod
+-double strtod ();
+-#endif
+ int
+ main (void)
+ {
+--- a/tests/fortran.at
++++ b/tests/fortran.at
+@@ -233,7 +233,7 @@ void FOOBAR_F77 (double *x, double *y);
+ # ifdef __cplusplus
+ extern "C"
+ # endif
+- int F77_DUMMY_MAIN () { return 1; }
++ int F77_DUMMY_MAIN (void) { return 1; }
+ #endif
+
+ int main(int argc, char *argv[])
+@@ -315,7 +315,7 @@ void FOOBAR_FC(double *x, double *y);
+ # ifdef __cplusplus
+ extern "C"
+ # endif
+- int FC_DUMMY_MAIN () { return 1; }
++ int FC_DUMMY_MAIN (void) { return 1; }
+ #endif
+
+ int main (int argc, char *argv[])
+@@ -561,7 +561,7 @@ void @foobar@ (int *x);
+ # ifdef __cplusplus
+ extern "C"
+ # endif
+- int F77_DUMMY_MAIN () { return 1; }
++ int F77_DUMMY_MAIN (void) { return 1; }
+ #endif
+
+ int main(int argc, char *argv[])
+@@ -637,7 +637,7 @@ void @foobar@ (int *x);
+ # ifdef __cplusplus
+ extern "C"
+ # endif
+- int FC_DUMMY_MAIN () { return 1; }
++ int FC_DUMMY_MAIN (void) { return 1; }
+ #endif
+
+ int main(int argc, char *argv[])
+--- a/tests/semantics.at
++++ b/tests/semantics.at
+@@ -207,7 +207,7 @@ AT_CHECK_MACRO([AC_CHECK_DECLS],
+ [[extern int yes;
+ enum { myenum };
+ extern struct mystruct_s { int x[20]; } mystruct;
+- extern int myfunc();
++ extern int myfunc (int);
+ #define mymacro1(arg) arg
+ #define mymacro2]])
+ # Ensure we can detect missing declarations of functions whose
diff --git a/poky/meta/recipes-devtools/autoconf/autoconf/0001-specify-void-prototype-for-functions-with-no-paramet.patch b/poky/meta/recipes-devtools/autoconf/autoconf/0001-specify-void-prototype-for-functions-with-no-paramet.patch
deleted file mode 100644
index 4d8aa296cd..0000000000
--- a/poky/meta/recipes-devtools/autoconf/autoconf/0001-specify-void-prototype-for-functions-with-no-paramet.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From 7ccfea413216bddd988823acf4e93421ea0f7f9f Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 16 Aug 2022 18:35:45 -0700
-Subject: [PATCH] specify void prototype for functions with no parameters
-
-Compilers defaulting to C99 flag such functions as warning which fails
-to compile when using -Werror
-
-Fixes
-error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
-
-Upstream-Status: Submitted [https://lists.gnu.org/archive/html/autoconf-patches/2022-08/msg00003.html]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- lib/autoconf/c.m4 | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
---- a/lib/autoconf/c.m4
-+++ b/lib/autoconf/c.m4
-@@ -127,7 +127,7 @@ m4_if([$2], [main], ,
- [/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
--char $2 ();])], [return $2 ();])])
-+char $2 (void);])], [return $2 ();])])
-
-
- # AC_LANG_FUNC_LINK_TRY(C)(FUNCTION)
-@@ -151,7 +151,7 @@ m4_define([AC_LANG_FUNC_LINK_TRY(C)],
- #define $1 innocuous_$1
-
- /* System header to define __stub macros and hopefully few prototypes,
-- which can conflict with char $1 (); below. */
-+ which can conflict with char $1 (void); below. */
-
- #include <limits.h>
- #undef $1
-@@ -162,7 +162,7 @@ m4_define([AC_LANG_FUNC_LINK_TRY(C)],
- #ifdef __cplusplus
- extern "C"
- #endif
--char $1 ();
-+char $1 (void);
- /* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-@@ -252,7 +252,7 @@ dnl other built-in extern "C" functions,
- dnl when it actually happens.
- [AC_LANG_PROGRAM([[$1
- namespace conftest {
-- extern "C" int $2 ();
-+ extern "C" int $2 (void);
- }]],
- [[return conftest::$2 ();]])])
-
-@@ -2457,7 +2457,7 @@ using std::strcmp;
-
- namespace {
-
--void test_exception_syntax()
-+void test_exception_syntax(void)
- {
- try {
- throw "test";
diff --git a/poky/meta/recipes-devtools/autoconf/autoconf_2.71.bb b/poky/meta/recipes-devtools/autoconf/autoconf_2.71.bb
index 239b268119..97c241a3f5 100644
--- a/poky/meta/recipes-devtools/autoconf/autoconf_2.71.bb
+++ b/poky/meta/recipes-devtools/autoconf/autoconf_2.71.bb
@@ -18,7 +18,7 @@ SRC_URI = "${GNU_MIRROR}/autoconf/${BP}.tar.gz \
file://preferbash.patch \
file://autotest-automake-result-format.patch \
file://man-host-perl.patch \
- file://0001-specify-void-prototype-for-functions-with-no-paramet.patch \
+ file://0001-Port-to-compilers-that-moan-about-K-R-func-decls.patch \
"
SRC_URI:append:class-native = " file://no-man.patch"
diff --git a/poky/meta/recipes-devtools/binutils/binutils-2.39.inc b/poky/meta/recipes-devtools/binutils/binutils-2.39.inc
index 89612a3eae..b040e57037 100644
--- a/poky/meta/recipes-devtools/binutils/binutils-2.39.inc
+++ b/poky/meta/recipes-devtools/binutils/binutils-2.39.inc
@@ -31,5 +31,13 @@ SRC_URI = "\
file://0010-sync-with-OE-libtool-changes.patch \
file://0011-Check-for-clang-before-checking-gcc-version.patch \
file://0012-Only-generate-an-RPATH-entry-if-LD_RUN_PATH-is-not-e.patch \
+ file://0013-CVE-2022-38533.patch \
+ file://0014-CVE-2022-38128-1.patch \
+ file://0014-CVE-2022-38128-2.patch \
+ file://0014-CVE-2022-38128-3.patch \
"
S = "${WORKDIR}/git"
+# Already in 2.39 branch
+# - https://sourceware.org/bugzilla/show_bug.cgi?id=29289
+# - https://sourceware.org/bugzilla/show_bug.cgi?id=29290
+CVE_CHECK_IGNORE += "CVE-2022-38126 CVE-2022-38127"
diff --git a/poky/meta/recipes-devtools/binutils/binutils-cross-canadian.inc b/poky/meta/recipes-devtools/binutils/binutils-cross-canadian.inc
index 4e8f10c1c4..12e7d77d8d 100644
--- a/poky/meta/recipes-devtools/binutils/binutils-cross-canadian.inc
+++ b/poky/meta/recipes-devtools/binutils/binutils-cross-canadian.inc
@@ -23,10 +23,10 @@ do_install () {
rm -f ${D}${libdir}/libiberty*
rm -f ${D}${libdir}/libopcodes*
rm -f ${D}${includedir}/*.h
-
+ rm -f ${D}${sysconfdir}/gprofng.rc
+ rmdir ${D}${sysconfdir} || :
+
cross_canadian_bindirlinks
}
-FILES:${PN} += "${sysconfdir}/gprofng.rc"
-
BBCLASSEXTEND = ""
diff --git a/poky/meta/recipes-devtools/binutils/binutils.inc b/poky/meta/recipes-devtools/binutils/binutils.inc
index 789c8bec21..98acf0a222 100644
--- a/poky/meta/recipes-devtools/binutils/binutils.inc
+++ b/poky/meta/recipes-devtools/binutils/binutils.inc
@@ -36,6 +36,24 @@ FILES:${PN}-dev = " \
# Rather than duplicating multiple entries for these, make one
# list and reuse it.
+GPROFNGS = " \
+ gp-archive \
+ gp-collect-app \
+ gp-display-html \
+ gp-display-src \
+ gp-display-text \
+ gprofng \
+"
+
+# it disables gprofng for clang and musl in the bb file
+GPROFNGS:toolchain-clang = ""
+GPROFNGS:libc-musl = ""
+
+GPROFNG_ALTS ?= ""
+GPROFNG_ALTS:x86 = "${GPROFNGS}"
+GPROFNG_ALTS:x86-64 = "${GPROFNGS}"
+GPROFNG_ALTS:aarch64 = "${GPROFNGS}"
+
LDGOLD_ALTS ?= "ld.gold dwp"
LDGOLD_ALTS:riscv64 = ""
LDGOLD_ALTS:riscv32 = ""
@@ -48,6 +66,7 @@ USE_ALTERNATIVES_FOR = " \
c++filt \
elfedit \
gprof \
+ ${GPROFNG_ALTS} \
ld \
ld.bfd \
${LDGOLD_ALTS} \
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0013-CVE-2022-38533.patch b/poky/meta/recipes-devtools/binutils/binutils/0013-CVE-2022-38533.patch
new file mode 100644
index 0000000000..5d9ac2cb1f
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/0013-CVE-2022-38533.patch
@@ -0,0 +1,36 @@
+From ef186fe54aa6d281a3ff8a9528417e5cc614c797 Mon Sep 17 00:00:00 2001
+From: Alan Modra <amodra@gmail.com>
+Date: Sat, 13 Aug 2022 15:32:47 +0930
+Subject: [PATCH] PR29482 - strip: heap-buffer-overflow
+
+ PR 29482
+ * coffcode.h (coff_set_section_contents): Sanity check _LIB.
+
+Upstream-Status: Backport [https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=ef186fe54aa6d281a3ff8a9528417e5cc614c797]
+
+Signed-off-by: Pgowda <pgowda.cve@gmail.com>
+
+---
+ bfd/coffcode.h | 7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/bfd/coffcode.h b/bfd/coffcode.h
+index 67aaf158ca1..52027981c3f 100644
+--- a/bfd/coffcode.h
++++ b/bfd/coffcode.h
+@@ -4302,10 +4302,13 @@ coff_set_section_contents (bfd * abfd,
+
+ rec = (bfd_byte *) location;
+ recend = rec + count;
+- while (rec < recend)
++ while (recend - rec >= 4)
+ {
++ size_t len = bfd_get_32 (abfd, rec);
++ if (len == 0 || len > (size_t) (recend - rec) / 4)
++ break;
++ rec += len * 4;
+ ++section->lma;
+- rec += bfd_get_32 (abfd, rec) * 4;
+ }
+
+ BFD_ASSERT (rec == recend);
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0014-CVE-2022-38128-1.patch b/poky/meta/recipes-devtools/binutils/binutils/0014-CVE-2022-38128-1.patch
new file mode 100644
index 0000000000..0a490d86b3
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/0014-CVE-2022-38128-1.patch
@@ -0,0 +1,350 @@
+From f07c08e115e27cddf5a0030dc6332bbee1bd9c6a Mon Sep 17 00:00:00 2001
+From: Alan Modra <amodra@gmail.com>
+Date: Thu, 21 Jul 2022 08:38:14 +0930
+Subject: [PATCH] binutils/dwarf.c: abbrev caching
+
+I'm inclined to think that abbrev caching is counter-productive. The
+time taken to search the list of abbrevs converted to internal form is
+non-zero, and it's easy to decode the raw abbrevs. It's especially
+silly to cache empty lists of decoded abbrevs (happens with zero
+padding in .debug_abbrev), or abbrevs as they are displayed when there
+is no further use of those abbrevs. This patch stops caching in those
+cases.
+
+ * dwarf.c (record_abbrev_list_for_cu): Add free_list param.
+ Put abbrevs on abbrev_lists here.
+ (new_abbrev_list): Delete function.
+ (process_abbrev_set): Return newly allocated list. Move
+ abbrev base, offset and size checking to..
+ (find_and_process_abbrev_set): ..here, new function. Handle
+ lookup of cached abbrevs here, and calculate start and end
+ for process_abbrev_set. Return free_list if newly alloc'd.
+ (process_debug_info): Consolidate cached list lookup, new list
+ alloc and processing into find_and_process_abbrev_set call.
+ Free list when not cached.
+ (display_debug_abbrev): Similarly.
+
+Upstream-Status: Backport [https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=f07c08e115e27cddf5a0030dc6332bbee1bd9c6a]
+
+Signed-off-by: Pgowda <pgowda.cve@gmail.com>
+---
+ binutils/dwarf.c | 208 +++++++++++++++++++++++++----------------------
+ 1 file changed, 110 insertions(+), 98 deletions(-)
+
+diff --git a/binutils/dwarf.c b/binutils/dwarf.c
+index 267ed3bb382..2fc352f74c5 100644
+--- a/binutils/dwarf.c
++++ b/binutils/dwarf.c
+@@ -882,8 +882,15 @@ static unsigned long next_free_abbrev_m
+ #define ABBREV_MAP_ENTRIES_INCREMENT 8
+
+ static void
+-record_abbrev_list_for_cu (dwarf_vma start, dwarf_vma end, abbrev_list * list)
++record_abbrev_list_for_cu (dwarf_vma start, dwarf_vma end,
++ abbrev_list *list, abbrev_list *free_list)
+ {
++ if (free_list != NULL)
++ {
++ list->next = abbrev_lists;
++ abbrev_lists = list;
++ }
++
+ if (cu_abbrev_map == NULL)
+ {
+ num_abbrev_map_entries = INITIAL_NUM_ABBREV_MAP_ENTRIES;
+@@ -936,20 +943,6 @@ free_all_abbrevs (void)
+ }
+
+ static abbrev_list *
+-new_abbrev_list (dwarf_vma abbrev_base, dwarf_vma abbrev_offset)
+-{
+- abbrev_list * list = (abbrev_list *) xcalloc (sizeof * list, 1);
+-
+- list->abbrev_base = abbrev_base;
+- list->abbrev_offset = abbrev_offset;
+-
+- list->next = abbrev_lists;
+- abbrev_lists = list;
+-
+- return list;
+-}
+-
+-static abbrev_list *
+ find_abbrev_list_by_abbrev_offset (dwarf_vma abbrev_base,
+ dwarf_vma abbrev_offset)
+ {
+@@ -966,7 +959,7 @@ find_abbrev_list_by_abbrev_offset (dwarf
+ /* Find the abbreviation map for the CU that includes OFFSET.
+ OFFSET is an absolute offset from the start of the .debug_info section. */
+ /* FIXME: This function is going to slow down readelf & objdump.
+- Consider using a better algorithm to mitigate this effect. */
++ Not caching abbrevs is likely the answer. */
+
+ static abbrev_map *
+ find_abbrev_map_by_offset (dwarf_vma offset)
+@@ -1033,40 +1026,18 @@ add_abbrev_attr (unsigned long attrib
+ list->last_abbrev->last_attr = attr;
+ }
+
+-/* Processes the (partial) contents of a .debug_abbrev section.
+- Returns NULL if the end of the section was encountered.
+- Returns the address after the last byte read if the end of
+- an abbreviation set was found. */
++/* Return processed (partial) contents of a .debug_abbrev section.
++ Returns NULL on errors. */
+
+-static unsigned char *
++static abbrev_list *
+ process_abbrev_set (struct dwarf_section *section,
+- dwarf_vma abbrev_base,
+- dwarf_vma abbrev_size,
+- dwarf_vma abbrev_offset,
+- abbrev_list *list)
++ unsigned char *start,
++ unsigned char *end)
+ {
+- if (abbrev_base >= section->size
+- || abbrev_size > section->size - abbrev_base)
+- {
+- /* PR 17531: file:4bcd9ce9. */
+- warn (_("Debug info is corrupted, abbrev size (%lx) is larger than "
+- "abbrev section size (%lx)\n"),
+- (unsigned long) (abbrev_base + abbrev_size),
+- (unsigned long) section->size);
+- return NULL;
+- }
+- if (abbrev_offset >= abbrev_size)
+- {
+- warn (_("Debug info is corrupted, abbrev offset (%lx) is larger than "
+- "abbrev section size (%lx)\n"),
+- (unsigned long) abbrev_offset,
+- (unsigned long) abbrev_size);
+- return NULL;
+- }
++ abbrev_list *list = xmalloc (sizeof (*list));
++ list->first_abbrev = NULL;
++ list->last_abbrev = NULL;
+
+- unsigned char *start = section->start + abbrev_base;
+- unsigned char *end = start + abbrev_size;
+- start += abbrev_offset;
+ while (start < end)
+ {
+ unsigned long entry;
+@@ -1079,14 +1050,18 @@ process_abbrev_set (struct dwarf_section
+ /* A single zero is supposed to end the set according
+ to the standard. If there's more, then signal that to
+ the caller. */
+- if (start == end)
+- return NULL;
+- if (entry == 0)
+- return start;
++ if (start == end || entry == 0)
++ {
++ list->start_of_next_abbrevs = start != end ? start : NULL;
++ return list;
++ }
+
+ READ_ULEB (tag, start, end);
+ if (start == end)
+- return NULL;
++ {
++ free (list);
++ return NULL;
++ }
+
+ children = *start++;
+
+@@ -1121,9 +1096,67 @@ process_abbrev_set (struct dwarf_section
+ /* Report the missing single zero which ends the section. */
+ error (_(".debug_abbrev section not zero terminated\n"));
+
++ free (list);
+ return NULL;
+ }
+
++/* Return a sequence of abbrevs in SECTION starting at ABBREV_BASE
++ plus ABBREV_OFFSET and finishing at ABBREV_BASE + ABBREV_SIZE.
++ If FREE_LIST is non-NULL search the already decoded abbrevs on
++ abbrev_lists first and if found set *FREE_LIST to NULL. If
++ searching doesn't find a matching abbrev, set *FREE_LIST to the
++ newly allocated list. If FREE_LIST is NULL, no search is done and
++ the returned abbrev_list is always newly allocated. */
++
++static abbrev_list *
++find_and_process_abbrev_set (struct dwarf_section *section,
++ dwarf_vma abbrev_base,
++ dwarf_vma abbrev_size,
++ dwarf_vma abbrev_offset,
++ abbrev_list **free_list)
++{
++ if (free_list)
++ *free_list = NULL;
++
++ if (abbrev_base >= section->size
++ || abbrev_size > section->size - abbrev_base)
++ {
++ /* PR 17531: file:4bcd9ce9. */
++ warn (_("Debug info is corrupted, abbrev size (%lx) is larger than "
++ "abbrev section size (%lx)\n"),
++ (unsigned long) (abbrev_base + abbrev_size),
++ (unsigned long) section->size);
++ return NULL;
++ }
++ if (abbrev_offset >= abbrev_size)
++ {
++ warn (_("Debug info is corrupted, abbrev offset (%lx) is larger than "
++ "abbrev section size (%lx)\n"),
++ (unsigned long) abbrev_offset,
++ (unsigned long) abbrev_size);
++ return NULL;
++ }
++
++ unsigned char *start = section->start + abbrev_base + abbrev_offset;
++ unsigned char *end = section->start + abbrev_base + abbrev_size;
++ abbrev_list *list = NULL;
++ if (free_list)
++ list = find_abbrev_list_by_abbrev_offset (abbrev_base, abbrev_offset);
++ if (list == NULL)
++ {
++ list = process_abbrev_set (section, start, end);
++ if (list)
++ {
++ list->abbrev_base = abbrev_base;
++ list->abbrev_offset = abbrev_offset;
++ list->next = NULL;
++ }
++ if (free_list)
++ *free_list = list;
++ }
++ return list;
++}
++
+ static const char *
+ get_TAG_name (unsigned long tag)
+ {
+@@ -3670,7 +3703,6 @@ process_debug_info (struct dwarf_section
+ dwarf_vma cu_offset;
+ unsigned int offset_size;
+ struct cu_tu_set * this_set;
+- abbrev_list * list;
+ unsigned char *end_cu;
+
+ hdrptr = start;
+@@ -3726,22 +3758,18 @@ process_debug_info (struct dwarf_section
+ abbrev_size = this_set->section_sizes [DW_SECT_ABBREV];
+ }
+
+- list = find_abbrev_list_by_abbrev_offset (abbrev_base,
+- compunit.cu_abbrev_offset);
+- if (list == NULL)
+- {
+- unsigned char * next;
+-
+- list = new_abbrev_list (abbrev_base,
+- compunit.cu_abbrev_offset);
+- next = process_abbrev_set (&debug_displays[abbrev_sec].section,
+- abbrev_base, abbrev_size,
+- compunit.cu_abbrev_offset, list);
+- list->start_of_next_abbrevs = next;
+- }
+-
++ abbrev_list *list;
++ abbrev_list *free_list;
++ list = find_and_process_abbrev_set (&debug_displays[abbrev_sec].section,
++ abbrev_base, abbrev_size,
++ compunit.cu_abbrev_offset,
++ &free_list);
+ start = end_cu;
+- record_abbrev_list_for_cu (cu_offset, start - section_begin, list);
++ if (list != NULL && list->first_abbrev != NULL)
++ record_abbrev_list_for_cu (cu_offset, start - section_begin,
++ list, free_list);
++ else if (free_list != NULL)
++ free_abbrev_list (free_list);
+ }
+
+ for (start = section_begin, unit = 0; start < end; unit++)
+@@ -3757,7 +3785,6 @@ process_debug_info (struct dwarf_section
+ struct cu_tu_set *this_set;
+ dwarf_vma abbrev_base;
+ size_t abbrev_size;
+- abbrev_list * list = NULL;
+ unsigned char *end_cu;
+
+ hdrptr = start;
+@@ -3936,20 +3963,10 @@ process_debug_info (struct dwarf_section
+ }
+
+ /* Process the abbrevs used by this compilation unit. */
+- list = find_abbrev_list_by_abbrev_offset (abbrev_base,
+- compunit.cu_abbrev_offset);
+- if (list == NULL)
+- {
+- unsigned char *next;
+-
+- list = new_abbrev_list (abbrev_base,
+- compunit.cu_abbrev_offset);
+- next = process_abbrev_set (&debug_displays[abbrev_sec].section,
+- abbrev_base, abbrev_size,
+- compunit.cu_abbrev_offset, list);
+- list->start_of_next_abbrevs = next;
+- }
+-
++ abbrev_list *list;
++ list = find_and_process_abbrev_set (&debug_displays[abbrev_sec].section,
++ abbrev_base, abbrev_size,
++ compunit.cu_abbrev_offset, NULL);
+ level = 0;
+ last_level = level;
+ saved_level = -1;
+@@ -4128,6 +4145,8 @@ process_debug_info (struct dwarf_section
+ if (entry->children)
+ ++level;
+ }
++ if (list != NULL)
++ free_abbrev_list (list);
+ }
+
+ /* Set num_debug_info_entries here so that it can be used to check if
+@@ -6353,24 +6372,15 @@ display_debug_abbrev (struct dwarf_secti
+
+ do
+ {
+- abbrev_list * list;
+- dwarf_vma offset;
+-
+- offset = start - section->start;
+- list = find_abbrev_list_by_abbrev_offset (0, offset);
++ dwarf_vma offset = start - section->start;
++ abbrev_list *list = find_and_process_abbrev_set (section, 0,
++ section->size, offset,
++ NULL);
+ if (list == NULL)
+- {
+- list = new_abbrev_list (0, offset);
+- start = process_abbrev_set (section, 0, section->size, offset, list);
+- list->start_of_next_abbrevs = start;
+- }
+- else
+- start = list->start_of_next_abbrevs;
+-
+- if (list->first_abbrev == NULL)
+- continue;
++ break;
+
+- printf (_(" Number TAG (0x%lx)\n"), (long) offset);
++ if (list->first_abbrev)
++ printf (_(" Number TAG (0x%lx)\n"), (long) offset);
+
+ for (entry = list->first_abbrev; entry; entry = entry->next)
+ {
+@@ -6391,6 +6401,8 @@ display_debug_abbrev (struct dwarf_secti
+ putchar ('\n');
+ }
+ }
++ start = list->start_of_next_abbrevs;
++ free_abbrev_list (list);
+ }
+ while (start);
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0014-CVE-2022-38128-2.patch b/poky/meta/recipes-devtools/binutils/binutils/0014-CVE-2022-38128-2.patch
new file mode 100644
index 0000000000..e30b4d86e1
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/0014-CVE-2022-38128-2.patch
@@ -0,0 +1,536 @@
+From 175b91507b83ad42607d2f6dadaf55b7b511bdbe Mon Sep 17 00:00:00 2001
+From: Alan Modra <amodra@gmail.com>
+Date: Wed, 20 Jul 2022 18:28:50 +0930
+Subject: [PATCH] miscellaneous dwarf.c tidies
+
+ * dwarf.c: Leading and trailing whitespace fixes.
+ (free_abbrev_list): New function.
+ (free_all_abbrevs): Use the above. Free cu_abbrev_map here too.
+ (process_abbrev_set): Print actual section name on error.
+ (get_type_abbrev_from_form): Add overflow check.
+ (free_debug_memory): Don't free cu_abbrev_map here..
+ (process_debug_info): ..or here. Warn on another case of not
+ finding a neeeded abbrev.
+
+Upstream-Status: Backport [https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=175b91507b83ad42607d2f6dadaf55b7b511bdbe]
+
+Signed-off-by: Pgowda <pgowda.cve@gmail.com>
+---
+ binutils/dwarf.c | 216 +++++++++++++++++++++++------------------------
+ 1 file changed, 106 insertions(+), 110 deletions(-)
+
+diff --git a/binutils/dwarf.c b/binutils/dwarf.c
+index 2b1eec49422..267ed3bb382 100644
+--- a/binutils/dwarf.c
++++ b/binutils/dwarf.c
+@@ -806,7 +806,7 @@ fetch_indexed_value (dwarf_vma idx,
+ pointer_size = 4;
+ bias = 12;
+ }
+-
++
+ dwarf_vma offset = idx * pointer_size;
+
+ /* Offsets are biased by the size of the section header
+@@ -908,38 +908,41 @@ record_abbrev_list_for_cu (dwarf_vma sta
+ next_free_abbrev_map_entry ++;
+ }
+
+-static void
+-free_all_abbrevs (void)
++static abbrev_list *
++free_abbrev_list (abbrev_list *list)
+ {
+- abbrev_list * list;
++ abbrev_entry *abbrv = list->first_abbrev;
+
+- for (list = abbrev_lists; list != NULL;)
++ while (abbrv)
+ {
+- abbrev_list * next = list->next;
+- abbrev_entry * abbrv;
++ abbrev_attr *attr = abbrv->first_attr;
+
+- for (abbrv = list->first_abbrev; abbrv != NULL;)
++ while (attr)
+ {
+- abbrev_entry * next_abbrev = abbrv->next;
+- abbrev_attr * attr;
+-
+- for (attr = abbrv->first_attr; attr;)
+- {
+- abbrev_attr *next_attr = attr->next;
+-
+- free (attr);
+- attr = next_attr;
+- }
+-
+- free (abbrv);
+- abbrv = next_abbrev;
++ abbrev_attr *next_attr = attr->next;
++ free (attr);
++ attr = next_attr;
+ }
+
+- free (list);
+- list = next;
++ abbrev_entry *next_abbrev = abbrv->next;
++ free (abbrv);
++ abbrv = next_abbrev;
+ }
+
+- abbrev_lists = NULL;
++ abbrev_list *next = list->next;
++ free (list);
++ return next;
++}
++
++static void
++free_all_abbrevs (void)
++{
++ while (abbrev_lists)
++ abbrev_lists = free_abbrev_list (abbrev_lists);
++
++ free (cu_abbrev_map);
++ cu_abbrev_map = NULL;
++ next_free_abbrev_map_entry = 0;
+ }
+
+ static abbrev_list *
+@@ -971,7 +974,7 @@ find_abbrev_map_by_offset (dwarf_vma off
+ && cu_abbrev_map[i].end > offset)
+ return cu_abbrev_map + i;
+
+- return NULL;
++ return NULL;
+ }
+
+ static void
+@@ -1094,7 +1097,7 @@ process_abbrev_set (struct dwarf_section
+ }
+
+ /* Report the missing single zero which ends the section. */
+- error (_(".debug_abbrev section not zero terminated\n"));
++ error (_("%s section not zero terminated\n"), section->name);
+
+ free (list);
+ return NULL;
+@@ -1875,7 +1878,7 @@ fetch_alt_indirect_string (dwarf_vma off
+ dwarf_vmatoa ("x", offset));
+ return _("<offset is too big>");
+ }
+-
++
+ static const char *
+ get_AT_name (unsigned long attribute)
+ {
+@@ -2157,7 +2160,8 @@ get_type_abbrev_from_form (unsigned long
+ case DW_FORM_ref4:
+ case DW_FORM_ref8:
+ case DW_FORM_ref_udata:
+- if (uvalue + cu_offset > (size_t) (cu_end - section->start))
++ if (uvalue + cu_offset < uvalue
++ || uvalue + cu_offset > (size_t) (cu_end - section->start))
+ {
+ warn (_("Unable to resolve ref form: uvalue %lx + cu_offset %lx > CU size %lx\n"),
+ uvalue, (long) cu_offset, (long) (cu_end - section->start));
+@@ -2194,7 +2198,7 @@ get_type_abbrev_from_form (unsigned long
+ else
+ *map_return = NULL;
+ }
+-
++
+ READ_ULEB (abbrev_number, data, section->start + section->size);
+
+ for (entry = map->list->first_abbrev; entry != NULL; entry = entry->next)
+@@ -2783,10 +2787,10 @@ read_and_display_attr_value (unsigned lo
+ if (form == DW_FORM_loclistx)
+ {
+ if (dwo)
+- {
+- index = fetch_indexed_value (uvalue, loclists_dwo, 0);
+- index += (offset_size == 8) ? 20 : 12;
+- }
++ {
++ index = fetch_indexed_value (uvalue, loclists_dwo, 0);
++ index += (offset_size == 8) ? 20 : 12;
++ }
+ else if (debug_info_p == NULL)
+ {
+ index = fetch_indexed_value (uvalue, loclists, 0);
+@@ -2804,21 +2808,21 @@ read_and_display_attr_value (unsigned lo
+ else if (form == DW_FORM_rnglistx)
+ {
+ if (dwo)
+- {
+- index = fetch_indexed_value (uvalue, rnglists_dwo, 0);
+- index += (offset_size == 8) ? 20 : 12;
+- }
++ {
++ index = fetch_indexed_value (uvalue, rnglists_dwo, 0);
++ index += (offset_size == 8) ? 20 : 12;
++ }
+ else
+- {
+- if (debug_info_p == NULL)
+- base = 0;
+- else
+- base = debug_info_p->rnglists_base;
+- /* We do not have a cached value this time, so we perform the
+- computation manually. */
+- index = fetch_indexed_value (uvalue, rnglists, base);
+- index += base;
+- }
++ {
++ if (debug_info_p == NULL)
++ base = 0;
++ else
++ base = debug_info_p->rnglists_base;
++ /* We do not have a cached value this time, so we perform the
++ computation manually. */
++ index = fetch_indexed_value (uvalue, rnglists, base);
++ index += base;
++ }
+ }
+ else
+ {
+@@ -2844,7 +2848,7 @@ read_and_display_attr_value (unsigned lo
+ if (!do_loc)
+ printf ("%c<0x%s>", delimiter, dwarf_vmatoa ("x", uvalue + cu_offset));
+ break;
+-
++
+ default:
+ warn (_("Unrecognized form: 0x%lx\n"), form);
+ /* What to do? Consume a byte maybe? */
+@@ -2869,9 +2873,9 @@ read_and_display_attr_value (unsigned lo
+ case DW_AT_rnglists_base:
+ if (debug_info_p->rnglists_base)
+ warn (_("CU @ 0x%s has multiple rnglists_base values (0x%s and 0x%s)"),
+- dwarf_vmatoa ("x", debug_info_p->cu_offset),
+- dwarf_vmatoa ("x", debug_info_p->rnglists_base),
+- dwarf_vmatoa ("x", uvalue));
++ dwarf_vmatoa ("x", debug_info_p->cu_offset),
++ dwarf_vmatoa ("x", debug_info_p->rnglists_base),
++ dwarf_vmatoa ("x", uvalue));
+ debug_info_p->rnglists_base = uvalue;
+ break;
+ case DW_AT_str_offsets_base:
+@@ -3021,7 +3025,7 @@ read_and_display_attr_value (unsigned lo
+ case DW_FORM_strx3:
+ case DW_FORM_strx4:
+ add_dwo_name (fetch_indexed_string (uvalue, this_set, offset_size, false,
+- debug_info_p->str_offsets_base),
++ debug_info_p->str_offsets_base),
+ cu_offset);
+ break;
+ case DW_FORM_string:
+@@ -3055,7 +3059,7 @@ read_and_display_attr_value (unsigned lo
+ case DW_FORM_strx3:
+ case DW_FORM_strx4:
+ add_dwo_dir (fetch_indexed_string (uvalue, this_set, offset_size, false,
+- debug_info_p->str_offsets_base),
++ debug_info_p->str_offsets_base),
+ cu_offset);
+ break;
+ case DW_FORM_string:
+@@ -3686,11 +3690,8 @@ process_debug_info (struct dwarf_section
+ introduce (section, false);
+
+ free_all_abbrevs ();
+- free (cu_abbrev_map);
+- cu_abbrev_map = NULL;
+- next_free_abbrev_map_entry = 0;
+
+- /* In order to be able to resolve DW_FORM_ref_attr forms we need
++ /* In order to be able to resolve DW_FORM_ref_addr forms we need
+ to load *all* of the abbrevs for all CUs in this .debug_info
+ section. This does effectively mean that we (partially) read
+ every CU header twice. */
+@@ -4045,12 +4046,11 @@ process_debug_info (struct dwarf_section
+
+ /* Scan through the abbreviation list until we reach the
+ correct entry. */
+- if (list == NULL)
+- continue;
+-
+- for (entry = list->first_abbrev; entry != NULL; entry = entry->next)
+- if (entry->number == abbrev_number)
+- break;
++ entry = NULL;
++ if (list != NULL)
++ for (entry = list->first_abbrev; entry != NULL; entry = entry->next)
++ if (entry->number == abbrev_number)
++ break;
+
+ if (entry == NULL)
+ {
+@@ -4074,7 +4074,7 @@ process_debug_info (struct dwarf_section
+ break;
+ case DW_TAG_compile_unit:
+ case DW_TAG_skeleton_unit:
+- need_base_address = 1;
++ need_base_address = 1;
+ need_dwo_info = do_loc;
+ break;
+ case DW_TAG_entry_point:
+@@ -4459,7 +4459,7 @@ display_debug_sup (struct dwarf_section
+
+ SAFE_BYTE_GET_AND_INC (is_supplementary, start, 1, end);
+ if (is_supplementary != 0 && is_supplementary != 1)
+- warn (_("corrupt .debug_sup section: is_supplementary not 0 or 1\n"));
++ warn (_("corrupt .debug_sup section: is_supplementary not 0 or 1\n"));
+
+ sup_filename = start;
+ if (is_supplementary && sup_filename[0] != 0)
+@@ -5638,7 +5638,7 @@ display_debug_lines_decoded (struct dwar
+ printf ("%s %11d %#18" DWARF_VMA_FMT "x",
+ newFileName, state_machine_regs.line,
+ state_machine_regs.address);
+- }
++ }
+ else
+ {
+ if (xop == -DW_LNE_end_sequence)
+@@ -6092,7 +6092,7 @@ display_debug_macro (struct dwarf_sectio
+ load_debug_section_with_follow (str, file);
+ load_debug_section_with_follow (line, file);
+ load_debug_section_with_follow (str_index, file);
+-
++
+ introduce (section, false);
+
+ while (curr < end)
+@@ -6537,7 +6537,7 @@ display_loc_list (struct dwarf_section *
+
+ /* Check base address specifiers. */
+ if (is_max_address (begin, pointer_size)
+- && !is_max_address (end, pointer_size))
++ && !is_max_address (end, pointer_size))
+ {
+ base_address = end;
+ print_dwarf_vma (begin, pointer_size);
+@@ -6715,7 +6715,7 @@ display_loclists_list (struct dwarf_sect
+ case DW_LLE_default_location:
+ begin = end = 0;
+ break;
+-
++
+ case DW_LLE_offset_pair:
+ READ_ULEB (begin, start, section_end);
+ begin += base_address;
+@@ -7011,7 +7011,7 @@ display_offset_entry_loclists (struct dw
+ unsigned char * start = section->start;
+ unsigned char * const end = start + section->size;
+
+- introduce (section, false);
++ introduce (section, false);
+
+ do
+ {
+@@ -7060,14 +7060,14 @@ display_offset_entry_loclists (struct dw
+ section->name, segment_selector_size);
+ return 0;
+ }
+-
++
+ if (offset_entry_count == 0)
+ {
+ warn (_("The %s section contains a table without offset\n"),
+ section->name);
+ return 0;
+ }
+-
++
+ printf (_("\n Offset Entries starting at 0x%lx:\n"),
+ (long)(start - section->start));
+
+@@ -8229,7 +8229,7 @@ display_debug_rnglists (struct dwarf_sec
+ start = display_debug_rnglists_list
+ (start, end, address_size, offset, 0, offset_size);
+ if (start >= end)
+- break;
++ break;
+ }
+
+ start = end;
+@@ -8347,12 +8347,12 @@ display_debug_ranges (struct dwarf_secti
+ next = section_begin + offset + debug_info_p->rnglists_base;
+
+ /* If multiple DWARF entities reference the same range then we will
+- have multiple entries in the `range_entries' list for the same
+- offset. Thanks to the sort above these will all be consecutive in
+- the `range_entries' list, so we can easily ignore duplicates
+- here. */
++ have multiple entries in the `range_entries' list for the same
++ offset. Thanks to the sort above these will all be consecutive in
++ the `range_entries' list, so we can easily ignore duplicates
++ here. */
+ if (i > 0 && last_offset == offset)
+- continue;
++ continue;
+ last_offset = offset;
+
+ if (dwarf_check != 0 && i > 0)
+@@ -10286,7 +10286,7 @@ display_debug_names (struct dwarf_sectio
+ printf (_("Out of %lu items there are %zu bucket clashes"
+ " (longest of %zu entries).\n"),
+ (unsigned long) name_count, hash_clash_count, longest_clash);
+-
++
+ if (name_count != buckets_filled + hash_clash_count)
+ warn (_("The name_count (%lu) is not the same as the used bucket_count (%lu) + the hash clash count (%lu)"),
+ (unsigned long) name_count,
+@@ -10390,7 +10390,7 @@ display_debug_names (struct dwarf_sectio
+ break;
+ if (tagno >= 0)
+ printf ("%s<%lu>",
+- (tagno == 0 && second_abbrev_tag == 0 ? " " : "\n\t"),
++ (tagno == 0 && second_abbrev_tag == 0 ? " " : "\n\t"),
+ (unsigned long) abbrev_tag);
+
+ for (entry = abbrev_lookup;
+@@ -10919,7 +10919,7 @@ process_cu_tu_index (struct dwarf_sectio
+ Check for integer overflow (can occur when size_t is 32-bit)
+ with overlarge ncols or nused values. */
+ if (nused == -1u
+- || _mul_overflow ((size_t) ncols, 4, &temp)
++ || _mul_overflow ((size_t) ncols, 4, &temp)
+ || _mul_overflow ((size_t) nused + 1, temp, &total)
+ || total > (size_t) (limit - ppool))
+ {
+@@ -10927,7 +10927,7 @@ process_cu_tu_index (struct dwarf_sectio
+ section->name);
+ return 0;
+ }
+-
++
+ if (do_display)
+ {
+ printf (_(" Offset table\n"));
+@@ -11431,8 +11431,8 @@ add_separate_debug_file (const char * fi
+
+ static bool
+ debuginfod_fetch_separate_debug_info (struct dwarf_section * section,
+- char ** filename,
+- void * file)
++ char ** filename,
++ void * file)
+ {
+ size_t build_id_len;
+ unsigned char * build_id;
+@@ -11450,14 +11450,14 @@ debuginfod_fetch_separate_debug_info (st
+
+ filelen = strnlen ((const char *)section->start, section->size);
+ if (filelen == section->size)
+- /* Corrupt debugaltlink. */
+- return false;
++ /* Corrupt debugaltlink. */
++ return false;
+
+ build_id = section->start + filelen + 1;
+ build_id_len = section->size - (filelen + 1);
+
+ if (build_id_len == 0)
+- return false;
++ return false;
+ }
+ else
+ return false;
+@@ -11469,25 +11469,25 @@ debuginfod_fetch_separate_debug_info (st
+
+ client = debuginfod_begin ();
+ if (client == NULL)
+- return false;
++ return false;
+
+ /* Query debuginfod servers for the target file. If found its path
+- will be stored in filename. */
++ will be stored in filename. */
+ fd = debuginfod_find_debuginfo (client, build_id, build_id_len, filename);
+ debuginfod_end (client);
+
+ /* Only free build_id if we allocated space for a hex string
+- in get_build_id (). */
++ in get_build_id (). */
+ if (build_id_len == 0)
+- free (build_id);
++ free (build_id);
+
+ if (fd >= 0)
+- {
+- /* File successfully retrieved. Close fd since we want to
+- use open_debug_file () on filename instead. */
+- close (fd);
+- return true;
+- }
++ {
++ /* File successfully retrieved. Close fd since we want to
++ use open_debug_file () on filename instead. */
++ close (fd);
++ return true;
++ }
+ }
+
+ return false;
+@@ -11500,7 +11500,7 @@ load_separate_debug_info (const char *
+ parse_func_type parse_func,
+ check_func_type check_func,
+ void * func_data,
+- void * file ATTRIBUTE_UNUSED)
++ void * file ATTRIBUTE_UNUSED)
+ {
+ const char * separate_filename;
+ char * debug_filename;
+@@ -11616,11 +11616,11 @@ load_separate_debug_info (const char *
+ & tmp_filename,
+ file))
+ {
+- /* File successfully downloaded from server, replace
+- debug_filename with the file's path. */
+- free (debug_filename);
+- debug_filename = tmp_filename;
+- goto found;
++ /* File successfully downloaded from server, replace
++ debug_filename with the file's path. */
++ free (debug_filename);
++ debug_filename = tmp_filename;
++ goto found;
+ }
+ }
+ #endif
+@@ -11787,12 +11787,12 @@ load_build_id_debug_file (const char * m
+ /* In theory we should extract the contents of the section into
+ a note structure and then check the fields. For now though
+ just use hard coded offsets instead:
+-
++
+ Field Bytes Contents
+ NSize 0...3 4
+ DSize 4...7 8+
+ Type 8..11 3 (NT_GNU_BUILD_ID)
+- Name 12.15 GNU\0
++ Name 12.15 GNU\0
+ Data 16.... */
+
+ /* FIXME: Check the name size, name and type fields. */
+@@ -11804,7 +11804,7 @@ load_build_id_debug_file (const char * m
+ warn (_(".note.gnu.build-id data size is too small\n"));
+ return;
+ }
+-
++
+ if (build_id_size > (section->size - 16))
+ {
+ warn (_(".note.gnu.build-id data size is too bug\n"));
+@@ -12100,10 +12100,6 @@ free_debug_memory (void)
+
+ free_all_abbrevs ();
+
+- free (cu_abbrev_map);
+- cu_abbrev_map = NULL;
+- next_free_abbrev_map_entry = 0;
+-
+ free (shndx_pool);
+ shndx_pool = NULL;
+ shndx_pool_size = 0;
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0014-CVE-2022-38128-3.patch b/poky/meta/recipes-devtools/binutils/binutils/0014-CVE-2022-38128-3.patch
new file mode 100644
index 0000000000..04d06ed6b6
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/0014-CVE-2022-38128-3.patch
@@ -0,0 +1,95 @@
+From 695c6dfe7e85006b98c8b746f3fd5f913c94ebff Mon Sep 17 00:00:00 2001
+From: Alan Modra <amodra@gmail.com>
+Date: Thu, 21 Jul 2022 09:56:15 +0930
+Subject: [PATCH] PR29370, infinite loop in display_debug_abbrev
+
+The PR29370 testcase is a fuzzed object file with multiple
+.trace_abbrev sections. Multiple .trace_abbrev or .debug_abbrev
+sections are not a violation of the DWARF standard. The DWARF5
+standard even gives an example of multiple .debug_abbrev sections
+contained in groups. Caching and lookup of processed abbrevs thus
+needs to be done by section and offset rather than base and offset.
+(Why base anyway?) Or, since section contents are kept, by a pointer
+into the contents.
+
+ PR 29370
+ * dwarf.c (struct abbrev_list): Replace abbrev_base and
+ abbrev_offset with raw field.
+ (find_abbrev_list_by_abbrev_offset): Delete.
+ (find_abbrev_list_by_raw_abbrev): New function.
+ (process_abbrev_set): Set list->raw and list->next.
+ (find_and_process_abbrev_set): Replace abbrev list lookup with
+ new function. Don't set list abbrev_base, abbrev_offset or next.
+
+Upstream-Status: Backport [https://sourceware.org/git/?p=binutils-gdb.git;a=patch;h=695c6dfe7e85006b98c8b746f3fd5f913c94ebff]
+
+Signed-off-by: Pgowda <pgowda.cve@gmail.com>
+---
+ binutils/dwarf.c | 19 ++++++-------------
+ 1 file changed, 6 insertions(+), 13 deletions(-)
+
+diff --git a/binutils/dwarf.c b/binutils/dwarf.c
+index 2fc352f74c5..99fb3566994 100644
+--- a/binutils/dwarf.c
++++ b/binutils/dwarf.c
+@@ -856,8 +856,7 @@ typedef struct abbrev_list
+ {
+ abbrev_entry * first_abbrev;
+ abbrev_entry * last_abbrev;
+- dwarf_vma abbrev_base;
+- dwarf_vma abbrev_offset;
++ unsigned char * raw;
+ struct abbrev_list * next;
+ unsigned char * start_of_next_abbrevs;
+ }
+@@ -946,14 +945,12 @@ free_all_abbrevs (void)
+ }
+
+ static abbrev_list *
+-find_abbrev_list_by_abbrev_offset (dwarf_vma abbrev_base,
+- dwarf_vma abbrev_offset)
++find_abbrev_list_by_raw_abbrev (unsigned char *raw)
+ {
+ abbrev_list * list;
+
+ for (list = abbrev_lists; list != NULL; list = list->next)
+- if (list->abbrev_base == abbrev_base
+- && list->abbrev_offset == abbrev_offset)
++ if (list->raw == raw)
+ return list;
+
+ return NULL;
+@@ -1040,6 +1037,7 @@ process_abbrev_set (struct dwarf_section
+ abbrev_list *list = xmalloc (sizeof (*list));
+ list->first_abbrev = NULL;
+ list->last_abbrev = NULL;
++ list->raw = start;
+
+ while (start < end)
+ {
+@@ -1055,6 +1053,7 @@ process_abbrev_set (struct dwarf_section
+ the caller. */
+ if (start == end || entry == 0)
+ {
++ list->next = NULL;
+ list->start_of_next_abbrevs = start != end ? start : NULL;
+ return list;
+ }
+@@ -1144,16 +1143,10 @@ find_and_process_abbrev_set (struct dwar
+ unsigned char *end = section->start + abbrev_base + abbrev_size;
+ abbrev_list *list = NULL;
+ if (free_list)
+- list = find_abbrev_list_by_abbrev_offset (abbrev_base, abbrev_offset);
++ list = find_abbrev_list_by_raw_abbrev (start);
+ if (list == NULL)
+ {
+ list = process_abbrev_set (section, start, end);
+- if (list)
+- {
+- list->abbrev_base = abbrev_base;
+- list->abbrev_offset = abbrev_offset;
+- list->next = NULL;
+- }
+ if (free_list)
+ *free_list = list;
+ }
diff --git a/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_5.19.bb b/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_5.19.1.bb
index 4f116a85ac..db8026e0f0 100644
--- a/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_5.19.bb
+++ b/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_5.19.1.bb
@@ -18,7 +18,7 @@ DEPENDS = "util-linux zlib"
SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/kdave/btrfs-progs.git;branch=master \
file://0001-Add-a-possibility-to-specify-where-python-modules-ar.patch \
"
-SRCREV = "96b83b16158f3b87037085761bf212e958473767"
+SRCREV = "e1d9dab326e043696e6648aba4ccf90874d1d3d1"
S = "${WORKDIR}/git"
PACKAGECONFIG ??= " \
diff --git a/poky/meta/recipes-devtools/ccache/ccache_4.6.2.bb b/poky/meta/recipes-devtools/ccache/ccache_4.6.3.bb
index dbac02243c..bc1be92bff 100644
--- a/poky/meta/recipes-devtools/ccache/ccache_4.6.2.bb
+++ b/poky/meta/recipes-devtools/ccache/ccache_4.6.3.bb
@@ -11,16 +11,12 @@ LIC_FILES_CHKSUM = "file://LICENSE.adoc;md5=7a19377a02749d8a1281ed608169b0ee"
DEPENDS = "zstd"
-SRC_URI = "https://github.com/ccache/ccache/releases/download/v${PV}/${BP}.tar.gz \
+SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BP}.tar.gz \
file://0001-xxhash.h-Fix-build-with-gcc-12.patch \
- file://0001-Include-time.h-for-time_t.patch \
- file://0002-config-Include-sys-types.h-for-mode_t-defintion.patch \
-"
-SRC_URI[sha256sum] = "6a746a9bed01585388b68e2d58af2e77741fc8d66bc360b5a0b4c41fc284dafe"
+ "
+SRC_URI[sha256sum] = "f46ba3706ad80c30d4d5874dee2bf9227a7fcd0ccaac31b51919a3053d84bd05"
-UPSTREAM_CHECK_URI = "https://github.com/ccache/ccache/releases/"
-
-inherit cmake
+inherit cmake github-releases
PATCHTOOL = "patch"
diff --git a/poky/meta/recipes-devtools/ccache/files/0001-Include-time.h-for-time_t.patch b/poky/meta/recipes-devtools/ccache/files/0001-Include-time.h-for-time_t.patch
deleted file mode 100644
index d752eb0651..0000000000
--- a/poky/meta/recipes-devtools/ccache/files/0001-Include-time.h-for-time_t.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 590c656838a9b3769a7a855fb1891bfa8d8878ad Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 23 Aug 2022 10:27:21 -0700
-Subject: [PATCH] Include time.h for time_t
-
-Fixes
-src/core/Statistics.hpp:41:37: error: 'time_t' has not been declared
-| 41 | time_t last_updated,
-| | ^~~~~~
-
-Upstream-Status: Submitted [https://github.com/ccache/ccache/pull/1145]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
----
- src/core/Statistics.hpp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/core/Statistics.hpp b/src/core/Statistics.hpp
-index 54f32e9..eb80e1c 100644
---- a/src/core/Statistics.hpp
-+++ b/src/core/Statistics.hpp
-@@ -21,6 +21,7 @@
- #include <core/StatisticsCounters.hpp>
-
- #include <cstdint>
-+#include <ctime>
- #include <string>
- #include <unordered_map>
- #include <vector>
diff --git a/poky/meta/recipes-devtools/ccache/files/0002-config-Include-sys-types.h-for-mode_t-defintion.patch b/poky/meta/recipes-devtools/ccache/files/0002-config-Include-sys-types.h-for-mode_t-defintion.patch
deleted file mode 100644
index 0fd77602df..0000000000
--- a/poky/meta/recipes-devtools/ccache/files/0002-config-Include-sys-types.h-for-mode_t-defintion.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From f98b390a2d323f7f92fb0492b0943d201afe5b8f Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 23 Aug 2022 10:40:53 -0700
-Subject: [PATCH] config: Include sys/types.h for mode_t defintion
-
-Upstream-Status: Submitted [https://github.com/ccache/ccache/pull/1145]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
----
- src/Config.hpp | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/src/Config.hpp b/src/Config.hpp
-index a9e08ec..9e7af40 100644
---- a/src/Config.hpp
-+++ b/src/Config.hpp
-@@ -25,6 +25,8 @@
-
- #include "third_party/nonstd/optional.hpp"
-
-+#include <sys/types.h>
-+
- #include <cstdint>
- #include <functional>
- #include <limits>
diff --git a/poky/meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake b/poky/meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake
index 3ddef12c83..d6a1e0464c 100644
--- a/poky/meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake
+++ b/poky/meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake
@@ -11,10 +11,7 @@ set( CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY )
set(CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX "$ENV{OE_CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX}")
-# Set CMAKE_SYSTEM_PROCESSOR from the sysroot name (assuming processor-distro-os).
-if ($ENV{SDKTARGETSYSROOT} MATCHES "/sysroots/([a-zA-Z0-9_-]+)-.+-.+")
- set(CMAKE_SYSTEM_PROCESSOR ${CMAKE_MATCH_1})
-endif()
+set( CMAKE_SYSTEM_PROCESSOR $ENV{OECORE_TARGET_ARCH} )
# Include the toolchain configuration subscripts
file( GLOB toolchain_config_files "${CMAKE_CURRENT_LIST_FILE}.d/*.cmake" )
diff --git a/poky/meta/recipes-devtools/dnf/dnf_4.13.0.bb b/poky/meta/recipes-devtools/dnf/dnf_4.14.0.bb
index bf89ceb275..62df8c4ace 100644
--- a/poky/meta/recipes-devtools/dnf/dnf_4.13.0.bb
+++ b/poky/meta/recipes-devtools/dnf/dnf_4.14.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 = "ef09e48fc3ebbbaf4dfa478e6e0532706506f091"
+SRCREV = "e50875b3f5790f70720bdb670e1dd2bf4d828744"
UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)"
S = "${WORKDIR}/git"
@@ -88,3 +88,9 @@ SYSTEMD_SERVICE:${PN} = "dnf-makecache.service dnf-makecache.timer \
SYSTEMD_AUTO_ENABLE ?= "disable"
SKIP_RECIPE[dnf] ?= "${@bb.utils.contains('PACKAGE_CLASSES', 'package_rpm', '', 'does not build without package_rpm in PACKAGE_CLASSES due disabled rpm support in libsolv', d)}"
+
+# Packages for testing purposes
+PACKAGES += "${PN}-test-main ${PN}-test-dep"
+ALLOW_EMPTY:${PN}-test-main = "1"
+ALLOW_EMPTY:${PN}-test-dep = "1"
+RRECOMMENDS:${PN}-test-main = "${PN}-test-dep"
diff --git a/poky/meta/recipes-devtools/dosfstools/dosfstools_4.2.bb b/poky/meta/recipes-devtools/dosfstools/dosfstools_4.2.bb
index 289d939bb9..47d81dac8d 100644
--- a/poky/meta/recipes-devtools/dosfstools/dosfstools_4.2.bb
+++ b/poky/meta/recipes-devtools/dosfstools/dosfstools_4.2.bb
@@ -9,13 +9,11 @@ SECTION = "base"
LICENSE = "GPL-3.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-SRC_URI = "https://github.com/dosfstools/dosfstools/releases/download/v${PV}/${BP}.tar.gz \
+SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BP}.tar.gz \
"
SRC_URI[sha256sum] = "64926eebf90092dca21b14259a5301b7b98e7b1943e8a201c7d726084809b527"
-UPSTREAM_CHECK_URI = "https://github.com/dosfstools/dosfstools/releases"
-
-inherit autotools gettext pkgconfig update-alternatives
+inherit autotools gettext pkgconfig update-alternatives github-releases
EXTRA_OECONF = "--enable-compat-symlinks --without-iconv"
diff --git a/poky/meta/recipes-devtools/elfutils/elfutils_0.187.bb b/poky/meta/recipes-devtools/elfutils/elfutils_0.187.bb
index 561112c580..40c51c8814 100644
--- a/poky/meta/recipes-devtools/elfutils/elfutils_0.187.bb
+++ b/poky/meta/recipes-devtools/elfutils/elfutils_0.187.bb
@@ -21,6 +21,7 @@ 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-tests-Add-libeu-to-tests-needing-error-API.patch \
"
SRC_URI:append:libc-musl = " \
file://0003-musl-utils.patch \
@@ -29,7 +30,6 @@ SRC_URI:append:libc-musl = " \
SRC_URI[sha256sum] = "e70b0dfbe610f90c4d1fe0d71af142a4e25c3c4ef9ebab8d2d72b65159d454c8"
inherit autotools gettext ptest pkgconfig
-PTEST_ENABLED:libc-musl = "0"
EXTRA_OECONF = "--program-prefix=eu-"
@@ -66,6 +66,7 @@ do_install_ptest() {
# copy the files which needed by the cases
TEST_FILES="strip strip.o addr2line elfcmp objdump readelf size.o nm.o nm elflint elfcompress elfclassify stack unstrip"
install -d -m 755 ${D}${PTEST_PATH}/src
+ install -d -m 755 ${D}${PTEST_PATH}/lib
install -d -m 755 ${D}${PTEST_PATH}/libelf
install -d -m 755 ${D}${PTEST_PATH}/libdw
install -d -m 755 ${D}${PTEST_PATH}/libdwfl
@@ -83,6 +84,7 @@ do_install_ptest() {
cp ${D}${libdir}/libasm-${PV}.so ${D}${PTEST_PATH}/libasm/libasm.so
cp ${B}/libcpu/libcpu.a ${D}${PTEST_PATH}/libcpu/
cp ${B}/libebl/libebl.a ${D}${PTEST_PATH}/libebl/
+ cp ${B}/lib/libeu.a ${D}${PTEST_PATH}/lib/
cp ${S}/libelf/*.h ${D}${PTEST_PATH}/libelf/
cp ${S}/libdw/*.h ${D}${PTEST_PATH}/libdw/
cp ${S}/libdwfl/*.h ${D}${PTEST_PATH}/libdwfl/
diff --git a/poky/meta/recipes-devtools/elfutils/files/0001-tests-Add-libeu-to-tests-needing-error-API.patch b/poky/meta/recipes-devtools/elfutils/files/0001-tests-Add-libeu-to-tests-needing-error-API.patch
new file mode 100644
index 0000000000..7c1bc87cbf
--- /dev/null
+++ b/poky/meta/recipes-devtools/elfutils/files/0001-tests-Add-libeu-to-tests-needing-error-API.patch
@@ -0,0 +1,147 @@
+From c05c787070a390a2061bfcb845e1e35e8b1373b3 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 13 Sep 2022 09:33:00 -0700
+Subject: [PATCH] tests: Add libeu to tests needing error() API
+
+A local error() impelmentation is used when libc does not provide it,
+therefore link in libeu.a which contains this function in tests needing
+error() API
+
+Upstream-Status: Submitted [https://sourceware.org/pipermail/elfutils-devel/2022q3/005375.html]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ tests/Makefile.am | 60 +++++++++++++++++++++++------------------------
+ 1 file changed, 30 insertions(+), 30 deletions(-)
+
+diff --git a/tests/Makefile.am b/tests/Makefile.am
+index 3943e17..1acc49b 100644
+--- a/tests/Makefile.am
++++ b/tests/Makefile.am
+@@ -638,17 +638,17 @@ libeu = ../lib/libeu.a
+ arextract_LDADD = $(libelf)
+ arsymtest_LDADD = $(libelf)
+ newfile_LDADD = $(libelf)
+-saridx_LDADD = $(libelf)
++saridx_LDADD = $(libeu) $(libelf)
+ scnnames_LDADD = $(libelf)
+-sectiondump_LDADD = $(libelf)
++sectiondump_LDADD = $(libeu) $(libelf)
+ showptable_LDADD = $(libelf)
+ hash_LDADD = $(libelf)
+ test_nlist_CFLAGS =-g -O0 $(EXTRA_NLIST_CFLAGS)
+ test_nlist_LDADD = $(libelf)
+ msg_tst_LDADD = $(libelf)
+ newscn_LDADD = $(libelf)
+-early_offscn_LDADD = $(libelf)
+-ecp_LDADD = $(libelf)
++early_offscn_LDADD = $(libeu) $(libelf)
++ecp_LDADD = $(libeu) $(libelf)
+ update1_LDADD = $(libelf)
+ update2_LDADD = $(libelf)
+ update3_LDADD = $(libdw) $(libelf)
+@@ -662,12 +662,12 @@ get_files_LDADD = $(libdw) $(libelf)
+ next_files_LDADD = $(libdw) $(libelf)
+ get_aranges_LDADD = $(libdw) $(libelf)
+ allfcts_LDADD = $(libdw) $(libelf)
+-line2addr_LDADD = $(libdw) $(argp_LDADD)
+-addrscopes_LDADD = $(libdw) $(argp_LDADD)
+-funcscopes_LDADD = $(libdw) $(argp_LDADD)
+-funcretval_LDADD = $(libdw) $(argp_LDADD)
+-allregs_LDADD = $(libdw) $(argp_LDADD)
+-find_prologues_LDADD = $(libdw) $(argp_LDADD)
++line2addr_LDADD = $(libeu) $(libdw) $(argp_LDADD)
++addrscopes_LDADD = $(libeu) $(libdw) $(argp_LDADD)
++funcscopes_LDADD = $(libeu) $(libdw) $(argp_LDADD)
++funcretval_LDADD = $(libeu) $(libdw) $(argp_LDADD)
++allregs_LDADD = $(libeu) $(libdw) $(argp_LDADD)
++find_prologues_LDADD = $(libeu) $(libdw) $(argp_LDADD)
+ #show_ciefde_LDADD = ../libdwarf/libdwarf.so $(libelf)
+ asm_tst1_LDADD = $(libasm) $(libebl) $(libelf) $(libdw)
+ asm_tst2_LDADD = $(libasm) $(libebl) $(libelf) $(libdw)
+@@ -678,19 +678,19 @@ asm_tst6_LDADD = $(libasm) $(libebl) $(libelf) $(libdw)
+ asm_tst7_LDADD = $(libasm) $(libebl) $(libelf) $(libdw)
+ asm_tst8_LDADD = $(libasm) $(libebl) $(libelf) $(libdw)
+ asm_tst9_LDADD = $(libasm) $(libebl) $(libelf) $(libdw)
+-dwflmodtest_LDADD = $(libdw) $(libebl) $(libelf) $(argp_LDADD)
+-rdwrmmap_LDADD = $(libelf)
++dwflmodtest_LDADD = $(libeu) $(libdw) $(libebl) $(libelf) $(argp_LDADD)
++rdwrmmap_LDADD = $(libeu) $(libelf)
+ dwfl_bug_addr_overflow_LDADD = $(libdw) $(libebl) $(libelf)
+ arls_LDADD = $(libelf)
+-dwfl_bug_fd_leak_LDADD = $(libdw) $(libebl) $(libelf)
++dwfl_bug_fd_leak_LDADD = $(libeu) $(libdw) $(libebl) $(libelf)
+ dwfl_bug_report_LDADD = $(libdw) $(libebl) $(libelf)
+-dwfl_bug_getmodules_LDADD = $(libdw) $(libebl) $(libelf)
+-dwfl_addr_sect_LDADD = $(libdw) $(libebl) $(libelf) $(argp_LDADD)
++dwfl_bug_getmodules_LDADD = $(libeu) $(libdw) $(libebl) $(libelf)
++dwfl_addr_sect_LDADD = $(libeu) $(libdw) $(libebl) $(libelf) $(argp_LDADD)
+ dwarf_getmacros_LDADD = $(libdw)
+ dwarf_ranges_LDADD = $(libdw)
+ dwarf_getstring_LDADD = $(libdw)
+ addrcfi_LDADD = $(libdw) $(libebl) $(libelf) $(argp_LDADD)
+-dwarfcfi_LDADD = $(libdw) $(libelf)
++dwarfcfi_LDADD = $(libeu) $(libdw) $(libelf)
+ test_flag_nobits_LDADD = $(libelf)
+ rerequest_tag_LDADD = $(libdw)
+ alldts_LDADD = $(libdw) $(libelf)
+@@ -699,35 +699,35 @@ typeiter2_LDADD = $(libdw) $(libelf)
+ low_high_pc_LDADD = $(libdw) $(libelf) $(argp_LDADD)
+ test_elf_cntl_gelf_getshdr_LDADD = $(libelf)
+ dwflsyms_LDADD = $(libdw) $(libelf) $(argp_LDADD)
+-dwfllines_LDADD = $(libdw) $(libelf) $(argp_LDADD)
+-dwfl_report_elf_align_LDADD = $(libdw)
++dwfllines_LDADD = $(libeu) $(libdw) $(libelf) $(argp_LDADD)
++dwfl_report_elf_align_LDADD = $(libeu) $(libdw)
+ dwfl_report_segment_contiguous_LDADD = $(libdw) $(libebl) $(libelf)
+-varlocs_LDADD = $(libdw) $(libelf) $(argp_LDADD)
+-backtrace_LDADD = $(libdw) $(libelf) $(argp_LDADD)
++varlocs_LDADD = $(libeu) $(libdw) $(libelf) $(argp_LDADD)
++backtrace_LDADD = $(libeu) $(libdw) $(libelf) $(argp_LDADD)
+ # backtrace-child-biarch also uses those *_CFLAGS and *_LDLAGS variables:
+ backtrace_child_CFLAGS = $(fpie_CFLAGS)
+ backtrace_child_LDFLAGS = -pie -pthread
+ backtrace_child_biarch_SOURCES = backtrace-child.c
+-backtrace_data_LDADD = $(libdw) $(libelf)
++backtrace_data_LDADD = $(libeu) $(libdw) $(libelf)
+ backtrace_dwarf_CFLAGS = -Wno-unused-parameter
+-backtrace_dwarf_LDADD = $(libdw) $(libelf)
+-debuglink_LDADD = $(libdw) $(libelf)
+-debugaltlink_LDADD = $(libdw) $(libelf)
+-buildid_LDADD = $(libdw) $(libelf)
++backtrace_dwarf_LDADD = $(libeu) $(libdw) $(libelf)
++debuglink_LDADD = $(libeu) $(libdw) $(libelf)
++debugaltlink_LDADD = $(libeu) $(libdw) $(libelf)
++buildid_LDADD = $(libeu) $(libdw) $(libelf)
+ deleted_LDADD = ./deleted-lib.so
+ deleted_lib_so_LDFLAGS = -shared
+ deleted_lib_so_CFLAGS = $(fpic_CFLAGS) -fasynchronous-unwind-tables
+ aggregate_size_LDADD = $(libdw) $(libelf) $(argp_LDADD)
+ peel_type_LDADD = $(libdw) $(libelf) $(argp_LDADD)
+-vdsosyms_LDADD = $(libdw) $(libelf)
+-getsrc_die_LDADD = $(libdw) $(libelf)
++vdsosyms_LDADD = $(libeu) $(libdw) $(libelf)
++getsrc_die_LDADD = $(libeu) $(libdw) $(libelf)
+ strptr_LDADD = $(libelf)
+ newdata_LDADD = $(libelf)
+ elfstrtab_LDADD = $(libelf)
+-dwfl_proc_attach_LDADD = $(libdw)
++dwfl_proc_attach_LDADD = $(libeu) $(libdw)
+ dwfl_proc_attach_LDFLAGS = -pthread -rdynamic $(AM_LDFLAGS)
+ elfshphehdr_LDADD =$(libelf)
+-elfstrmerge_LDADD = $(libdw) $(libelf)
++elfstrmerge_LDADD = $(libeu) $(libdw) $(libelf)
+ dwelfgnucompressed_LDADD = $(libelf) $(libdw)
+ elfgetchdr_LDADD = $(libelf) $(libdw)
+ elfgetzdata_LDADD = $(libelf)
+@@ -743,7 +743,7 @@ get_units_split_LDADD = $(libdw)
+ attr_integrate_skel_LDADD = $(libdw)
+ all_dwarf_ranges_LDADD = $(libdw)
+ unit_info_LDADD = $(libdw)
+-next_cfi_LDADD = $(libelf) $(libdw)
++next_cfi_LDADD = $(libeu) $(libelf) $(libdw)
+ elfcopy_LDADD = $(libelf)
+ addsections_LDADD = $(libelf)
+ debuginfod_build_id_find_LDADD = $(libelf) $(libdw)
+--
+2.37.3
+
diff --git a/poky/meta/recipes-devtools/file/file_5.42.bb b/poky/meta/recipes-devtools/file/file_5.43.bb
index 8efcf09c9c..102d0fda26 100644
--- a/poky/meta/recipes-devtools/file/file_5.42.bb
+++ b/poky/meta/recipes-devtools/file/file_5.43.bb
@@ -13,7 +13,7 @@ DEPENDS:class-native = "bzip2-replacement-native"
SRC_URI = "git://github.com/file/file.git;branch=master;protocol=https"
-SRCREV = "a42b38690579de23403e0aff9b7b2f9cdf55f534"
+SRCREV = "011778a2877f75597ed83c1a2716d917770920ee"
S = "${WORKDIR}/git"
inherit autotools update-alternatives
diff --git a/poky/meta/recipes-devtools/flex/flex_2.6.4.bb b/poky/meta/recipes-devtools/flex/flex_2.6.4.bb
index 8736b3585e..15cf6f5cca 100644
--- a/poky/meta/recipes-devtools/flex/flex_2.6.4.bb
+++ b/poky/meta/recipes-devtools/flex/flex_2.6.4.bb
@@ -12,7 +12,7 @@ BBCLASSEXTEND = "native nativesdk"
LIC_FILES_CHKSUM = "file://COPYING;md5=e4742cf92e89040b39486a6219b68067 \
file://src/gettext.h;beginline=1;endline=17;md5=9c05dda2f58d89b850c399cf22e1a00c"
-SRC_URI = "https://github.com/westes/flex/releases/download/v${PV}/flex-${PV}.tar.gz \
+SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/flex-${PV}.tar.gz \
file://run-ptest \
file://0001-tests-add-a-target-for-building-tests-without-runnin.patch \
${@bb.utils.contains('PTEST_ENABLED', '1', '', 'file://disable-tests.patch', d)} \
@@ -24,16 +24,14 @@ SRC_URI = "https://github.com/westes/flex/releases/download/v${PV}/flex-${PV}.ta
SRC_URI[md5sum] = "2882e3179748cc9f9c23ec593d6adc8d"
SRC_URI[sha256sum] = "e87aae032bf07c26f85ac0ed3250998c37621d95f8bd748b31f15b33c45ee995"
-# Flex has moved to github from 2.6.1 onwards
-UPSTREAM_CHECK_URI = "https://github.com/westes/flex/releases"
-UPSTREAM_CHECK_REGEX = "flex-(?P<pver>\d+(\.\d+)+)\.tar"
+GITHUB_BASE_URI = "https://github.com/westes/flex/releases"
# Disputed - yes there is stack exhaustion but no bug and it is building the
# parser, not running it, effectively similar to a compiler ICE. Upstream no plans to address
# https://github.com/westes/flex/issues/414
CVE_CHECK_IGNORE += "CVE-2019-6293"
-inherit autotools gettext texinfo ptest
+inherit autotools gettext texinfo ptest github-releases
M4 = "${bindir}/m4"
M4:class-native = "${STAGING_BINDIR_NATIVE}/m4"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-12.2.inc b/poky/meta/recipes-devtools/gcc/gcc-12.2.inc
index 572fd8b669..0dbbecad4a 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-12.2.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-12.2.inc
@@ -49,7 +49,6 @@ SRC_URI = "${BASEURI} \
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-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 \
@@ -59,10 +58,8 @@ SRC_URI = "${BASEURI} \
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 \
file://0026-rust-recursion-limit.patch \
file://prefix-map-realpath.patch \
file://hardcoded-paths.patch \
diff --git a/poky/meta/recipes-devtools/gcc/gcc-common.inc b/poky/meta/recipes-devtools/gcc/gcc-common.inc
index 2abc0e355d..d3b36937bf 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-common.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-common.inc
@@ -32,6 +32,16 @@ def get_gcc_float_setting(bb, d):
get_gcc_float_setting[vardepvalue] = "${@get_gcc_float_setting(bb, d)}"
+def get_gcc_x86_64_arch_setting(bb, d):
+ import re
+ march = re.match(r'^.*-march=([^\s]*)', d.getVar('TUNE_CCARGS'))
+ if march:
+ return "--with-arch=%s " % march.group(1)
+ # The earliest supported x86-64 CPU
+ return "--with-arch=core2"
+
+get_gcc_x86_64_arch_setting[vardepvalue] = "${@get_gcc_x86_64_arch_setting(bb, d)}"
+
def get_gcc_mips_plt_setting(bb, d):
if d.getVar('TRANSLATED_TARGET_ARCH') in [ 'mips', 'mipsel' ] and bb.utils.contains('DISTRO_FEATURES', 'mplt', True, False, d):
return "--with-mips-plt"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
index a87b446c4f..c36e4cba81 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
@@ -9,6 +9,7 @@ GCCMULTILIB = "--enable-multilib"
require gcc-configure-common.inc
+EXTRA_OECONF += "--with-plugin-ld=ld"
EXTRA_OECONF_PATHS = "\
--with-gxx-include-dir=/not/exist${target_includedir}/c++/${BINV} \
--with-build-time-tools=${STAGING_DIR_NATIVE}${prefix_native}/${TARGET_SYS}/bin \
@@ -134,8 +135,6 @@ do_install () {
ln -sf ${BINRELPATH}/${TARGET_PREFIX}$t$suffix $dest$t$suffix
done
- t=real-ld
- ln -sf ${BINRELPATH}/${TARGET_PREFIX}ld$suffix $dest$t$suffix
# libquadmath headers need to be available in the gcc libexec dir
install -d ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include/
diff --git a/poky/meta/recipes-devtools/gcc/gcc-target.inc b/poky/meta/recipes-devtools/gcc/gcc-target.inc
index cc65e995c3..7dac3ef422 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-target.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-target.inc
@@ -19,7 +19,7 @@ EXTRA_OECONF:append:armv6:class-target = " --with-arch=armv6${ARMFPARCHEXT}"
EXTRA_OECONF:append:armv7a:class-target = " --with-arch=armv7-a${ARMFPARCHEXT}"
EXTRA_OECONF:append:armv7ve:class-target = " --with-arch=armv7ve${ARMFPARCHEXT}"
EXTRA_OECONF:append:arc:class-target = " --with-cpu=${TUNE_PKGARCH}"
-EXTRA_OECONF:append:x86-64:class-target = " --with-arch=native"
+EXTRA_OECONF:append:x86-64:class-target = " ${@get_gcc_x86_64_arch_setting(bb, d)}"
# libcc1 requres gcc_cv_objdump when cross build, but gcc_cv_objdump is
# set in subdir gcc, so subdir libcc1 can't use it, export it here to
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 5a51ae7d96..bfec4477c1 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
@@ -185,6 +185,19 @@ index bb07cc244e3..ce161d3c853 100644
/* Pass -d* flags, possibly modifying -dumpdir, -dumpbase et al.
+@@ -1265,7 +1270,11 @@ static const char *cc1_options =
+ %{coverage:-fprofile-arcs -ftest-coverage}\
+ %{fprofile-arcs|fprofile-generate*|coverage:\
+ %{!fprofile-update=single:\
+- %{pthread:-fprofile-update=prefer-atomic}}}";
++ %{pthread:-fprofile-update=prefer-atomic}}}"
++#ifdef POISON_BY_DEFAULT
++ " -Werror=poison-system-directories"
++#endif
++ ;
+
+ static const char *asm_options =
+ "%{-target-help:%:print-asm-header()} "
diff --git a/gcc/incpath.cc b/gcc/incpath.cc
index bd2a97938eb..c80f100f476 100644
--- a/gcc/incpath.cc
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0012-export-CPP.patch b/poky/meta/recipes-devtools/gcc/gcc/0012-export-CPP.patch
deleted file mode 100644
index 7e1ebef463..0000000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0012-export-CPP.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-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/0022-mingw32-Enable-operation_not_supported.patch b/poky/meta/recipes-devtools/gcc/gcc/0022-mingw32-Enable-operation_not_supported.patch
deleted file mode 100644
index f88ad51ee8..0000000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0022-mingw32-Enable-operation_not_supported.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-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
-
-Fixes nativesdk build errors on mingw32 gcc-runtime
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- libstdc++-v3/config/os/mingw32/error_constants.h | 2 +-
- 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 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
- #ifdef EPERM
- operation_not_permitted = EPERM,
- #endif
--// operation_not_supported = EOPNOTSUPP,
-+ operation_not_supported = EOPNOTSUPP,
- #ifdef EWOULDBLOCK
- operation_would_block = EWOULDBLOCK,
- #endif
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
deleted file mode 100644
index d4aeacfed5..0000000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0025-Move-sched.h-include-ahead-of-user-headers.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-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/git/git_2.37.2.bb b/poky/meta/recipes-devtools/git/git_2.37.3.bb
index b7858e2e46..2eed85e807 100644
--- a/poky/meta/recipes-devtools/git/git_2.37.2.bb
+++ b/poky/meta/recipes-devtools/git/git_2.37.3.bb
@@ -165,4 +165,4 @@ EXTRA_OECONF += "ac_cv_snprintf_returns_bogus=no \
"
EXTRA_OEMAKE += "NO_GETTEXT=1"
-SRC_URI[tarball.sha256sum] = "4c428908e3a2dca4174df6ef49acc995a4fdb1b45205a2c79794487a33bc06e5"
+SRC_URI[tarball.sha256sum] = "181f65587155ea48c682f63135678ec53055adf1532428752912d356e46b64a8"
diff --git a/poky/meta/recipes-devtools/go/go-native_1.19.bb b/poky/meta/recipes-devtools/go/go-native_1.19.bb
index 76c0ab73a6..ddf25b2c9b 100644
--- a/poky/meta/recipes-devtools/go/go-native_1.19.bb
+++ b/poky/meta/recipes-devtools/go/go-native_1.19.bb
@@ -5,7 +5,7 @@ require go-${PV}.inc
inherit native
-SRC_URI:append = " https://dl.google.com/go/go1.4-bootstrap-20171003.tar.gz;name=bootstrap;subdir=go1.4"
+SRC_URI += "https://dl.google.com/go/go1.4-bootstrap-20171003.tar.gz;name=bootstrap;subdir=go1.4"
SRC_URI[bootstrap.sha256sum] = "f4ff5b5eb3a3cae1c993723f3eab519c5bae18866b5e5f96fe1102f0cb5c3e52"
export GOOS = "${BUILD_GOOS}"
diff --git a/poky/meta/recipes-devtools/go/go-runtime.inc b/poky/meta/recipes-devtools/go/go-runtime.inc
index e18339cddb..02601f7992 100644
--- a/poky/meta/recipes-devtools/go/go-runtime.inc
+++ b/poky/meta/recipes-devtools/go/go-runtime.inc
@@ -50,6 +50,8 @@ do_install() {
rm -rf ${D}${libdir}/go/pkg/tool
rm -rf ${D}${libdir}/go/pkg/obj
rm -rf ${D}${libdir}/go/pkg/bootstrap
+ # the cmd directory is built for the native arch so if BUILD == TARGET
+ rm -rf ${D}${libdir}/go/pkg/${BUILD_GOTUPLE}/cmd
find src -mindepth 1 -maxdepth 1 -type d | while read srcdir; do
cp --preserve=mode,timestamps -R $srcdir ${D}${libdir}/go/src/
done
diff --git a/poky/meta/recipes-devtools/libcomps/libcomps_0.1.18.bb b/poky/meta/recipes-devtools/libcomps/libcomps_0.1.19.bb
index dd0a1f8f95..fa1fbc8f0d 100644
--- a/poky/meta/recipes-devtools/libcomps/libcomps_0.1.18.bb
+++ b/poky/meta/recipes-devtools/libcomps/libcomps_0.1.19.bb
@@ -8,7 +8,7 @@ SRC_URI = "git://github.com/rpm-software-management/libcomps.git;branch=master;p
file://0002-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \
"
-SRCREV = "dee4ae37f7818709802de28c4d16fa823bd83ae2"
+SRCREV = "9322bdcf06630cc094f094f944d7d0e2cb798b73"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-devtools/libdnf/libdnf_0.68.0.bb b/poky/meta/recipes-devtools/libdnf/libdnf_0.69.0.bb
index 86cf41c102..da2550d323 100644
--- a/poky/meta/recipes-devtools/libdnf/libdnf_0.68.0.bb
+++ b/poky/meta/recipes-devtools/libdnf/libdnf_0.69.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 = "388e7699f8a75fa81aca05d09389acea7e489168"
+SRCREV = "5c6d9cd6e5955e7038722f091396607c60fcbdd1"
UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(?!4\.90)\d+(\.\d+)+)"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-devtools/librepo/librepo/0001-metadata_downloader-Include-unistd.h-for-lseek.patch b/poky/meta/recipes-devtools/librepo/librepo/0001-metadata_downloader-Include-unistd.h-for-lseek.patch
deleted file mode 100644
index 22b3110a61..0000000000
--- a/poky/meta/recipes-devtools/librepo/librepo/0001-metadata_downloader-Include-unistd.h-for-lseek.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 5c63ec2e2d4726268ace85e5c61727cbd811d982 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 27 Aug 2022 09:00:24 -0700
-Subject: [PATCH] metadata_downloader: Include unistd.h for lseek()
-
-This is found when compiling on musl systems
-
-Fixes
-
-metadata_downloader.c:331:9: error: call to undeclared function 'lseek'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
- lseek(fd_value, SEEK_SET, 0);
- ^
-
-Upstream-Status: Submitted [https://github.com/rpm-software-management/librepo/pull/263]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- librepo/metadata_downloader.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/librepo/metadata_downloader.c b/librepo/metadata_downloader.c
-index 123c77b..6604255 100644
---- a/librepo/metadata_downloader.c
-+++ b/librepo/metadata_downloader.c
-@@ -24,6 +24,7 @@
- #include <assert.h>
- #include <string.h>
- #include <errno.h>
-+#include <unistd.h>
- #include <sys/stat.h>
-
- #include "librepo/librepo.h"
---
-2.37.2
-
diff --git a/poky/meta/recipes-devtools/librepo/librepo_1.14.4.bb b/poky/meta/recipes-devtools/librepo/librepo_1.14.5.bb
index 2b8bd132f3..46cfce53ff 100644
--- a/poky/meta/recipes-devtools/librepo/librepo_1.14.4.bb
+++ b/poky/meta/recipes-devtools/librepo/librepo_1.14.5.bb
@@ -8,10 +8,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
SRC_URI = "git://github.com/rpm-software-management/librepo.git;branch=master;protocol=https \
file://0002-Do-not-try-to-obtain-PYTHON_INSTALL_DIR-by-running-p.patch \
file://0004-Set-gpgme-variables-with-pkg-config-not-with-cmake-m.patch \
- file://0001-metadata_downloader-Include-unistd.h-for-lseek.patch \
"
-SRCREV = "2bd1041c741c85bc196ca01dcca1eae6099eb742"
+SRCREV = "f4b915be5e04e88263097f65addfcac5919fef41"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-devtools/meson/meson_0.63.1.bb b/poky/meta/recipes-devtools/meson/meson_0.63.2.bb
index 7f77a7de34..890faacec9 100644
--- a/poky/meta/recipes-devtools/meson/meson_0.63.1.bb
+++ b/poky/meta/recipes-devtools/meson/meson_0.63.2.bb
@@ -7,7 +7,8 @@ interface for modern software development tools and practices."
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://COPYING;md5=3b83ef96387f14655fc854ddc3c6bd57"
-SRC_URI = "https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${PV}.tar.gz \
+GITHUB_BASE_URI = "https://github.com/mesonbuild/meson/releases/"
+SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/meson-${PV}.tar.gz \
file://meson-setup.py \
file://meson-wrapper \
file://0001-python-module-do-not-manipulate-the-environment-when.patch \
@@ -17,12 +18,9 @@ SRC_URI = "https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${P
file://0001-is_debianlike-always-return-False.patch \
file://0001-Check-for-clang-before-guessing-gcc-or-lcc.patch \
"
-SRC_URI[sha256sum] = "06fe13297213d6ff0121c5d5aab25a56ef938ffec57414ed6086fda272cb65e9"
+SRC_URI[sha256sum] = "16222f17ef76be0542c91c07994f9676ae879f46fc21c0c786a21ef2cb518bbf"
-UPSTREAM_CHECK_URI = "https://github.com/mesonbuild/meson/releases"
-UPSTREAM_CHECK_REGEX = "meson-(?P<pver>\d+(\.\d+)+)\.tar"
-
-inherit python_setuptools_build_meta
+inherit python_setuptools_build_meta github-releases
RDEPENDS:${PN} = "ninja python3-modules python3-pkg-resources"
diff --git a/poky/meta/recipes-devtools/ninja/ninja_1.11.0.bb b/poky/meta/recipes-devtools/ninja/ninja_1.11.1.bb
index 4ec361cc1a..255f5efb70 100644
--- a/poky/meta/recipes-devtools/ninja/ninja_1.11.0.bb
+++ b/poky/meta/recipes-devtools/ninja/ninja_1.11.1.bb
@@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=a81586a64ad4e476c791cda7e2f2c52e"
DEPENDS = "re2c-native ninja-native"
-SRCREV = "51edeeb063a82693573db43782d9e3733b2840e4"
+SRCREV = "a524bf3f6bacd1b4ad85d719eed2737d8562f27a"
SRC_URI = "git://github.com/ninja-build/ninja.git;branch=release;protocol=https"
UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>.*)"
diff --git a/poky/meta/recipes-devtools/opkg/opkg_0.6.0.bb b/poky/meta/recipes-devtools/opkg/opkg_0.6.0.bb
index 7b351e8123..4cd589cd29 100644
--- a/poky/meta/recipes-devtools/opkg/opkg_0.6.0.bb
+++ b/poky/meta/recipes-devtools/opkg/opkg_0.6.0.bb
@@ -39,6 +39,7 @@ PACKAGECONFIG[gpg] = "--enable-gpg,--disable-gpg,\
PACKAGECONFIG[curl] = "--enable-curl,--disable-curl,curl"
PACKAGECONFIG[ssl-curl] = "--enable-ssl-curl,--disable-ssl-curl,curl openssl"
PACKAGECONFIG[sha256] = "--enable-sha256,--disable-sha256"
+PACKAGECONFIG[zstd] = "--enable-zstd,--disable-zstd,zstd"
PACKAGECONFIG[libsolv] = "--with-libsolv,--without-libsolv,libsolv"
EXTRA_OECONF:class-native = "--localstatedir=/${@os.path.relpath('${localstatedir}', '${STAGING_DIR_NATIVE}')} --sysconfdir=/${@os.path.relpath('${sysconfdir}', '${STAGING_DIR_NATIVE}')}"
diff --git a/poky/meta/recipes-devtools/perl-cross/perlcross_1.4.bb b/poky/meta/recipes-devtools/perl-cross/perlcross_1.4.bb
index 17ce901646..98a8fa3f8a 100644
--- a/poky/meta/recipes-devtools/perl-cross/perlcross_1.4.bb
+++ b/poky/meta/recipes-devtools/perl-cross/perlcross_1.4.bb
@@ -8,16 +8,16 @@ LICENSE = "Artistic-1.0 | GPL-1.0-or-later"
# but is not provided inside the release tarballs
LIC_FILES_CHKSUM = "file://${WORKDIR}/README.md;md5=252fcce2026b765fee1ad74d2fb07a3b"
-inherit allarch
+inherit allarch github-releases
-SRC_URI = "https://github.com/arsv/perl-cross/releases/download/${PV}/perl-cross-${PV}.tar.gz;name=perl-cross \
+SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/perl-cross-${PV}.tar.gz;name=perl-cross \
file://README.md \
file://0001-perl-cross-add-LDFLAGS-when-linking-libperl.patch \
file://determinism.patch \
file://0001-Makefile-check-the-file-if-patched-or-not.patch \
file://0001-configure_func.sh-Add-_GNU_SOURCE-define-and-functio.patch \
"
-UPSTREAM_CHECK_URI = "https://github.com/arsv/perl-cross/releases/"
+GITHUB_BASE_URI = "https://github.com/arsv/perl-cross/releases/"
SRC_URI[perl-cross.sha256sum] = "be9d9f9f7148edff7a2f9695ba3cb7e3975eff6b25a9a81dd311725fd757aa91"
diff --git a/poky/meta/recipes-devtools/python/python3-certifi_2022.6.15.bb b/poky/meta/recipes-devtools/python/python3-certifi_2022.9.14.bb
index f78409b177..117a32b1d4 100644
--- a/poky/meta/recipes-devtools/python/python3-certifi_2022.6.15.bb
+++ b/poky/meta/recipes-devtools/python/python3-certifi_2022.9.14.bb
@@ -5,9 +5,9 @@ which ships with the Requests codebase, and is derived from Mozilla Firefox's ca
HOMEPAGE = " http://certifi.io/"
LICENSE = "ISC"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=67da0714c3f9471067b729eca6c9fbe8"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=3c2b7404369c587c3559afb604fce2f2"
-SRC_URI[sha256sum] = "84c85a9078b11105f04f3036a9482ae10e4621616db313fe045dd24743a0820d"
+SRC_URI[sha256sum] = "36973885b9542e6bd01dea287b2b4b3b21236307c56324fcc3f1160f2d655ed5"
inherit pypi setuptools3
diff --git a/poky/meta/recipes-devtools/python/python3-dtschema_2022.8.1.bb b/poky/meta/recipes-devtools/python/python3-dtschema_2022.8.3.bb
index 38f646e50a..bc819c0dd6 100644
--- a/poky/meta/recipes-devtools/python/python3-dtschema_2022.8.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-dtschema_2022.8.3.bb
@@ -7,7 +7,7 @@ inherit pypi setuptools3
PYPI_PACKAGE = "dtschema"
-SRC_URI[sha256sum] = "3e56a9920944223d6f93fd51ada19dd8db554ac9182ef52c1c5c9d4966ab30aa"
+SRC_URI[sha256sum] = "128c88a393cd04154cef4d4b10a643e4473ae290b436e8e61d2e97ae8e53255d"
DEPENDS += "python3-setuptools-scm-native"
RDEPENDS:${PN} += "python3-ruamel-yaml python3-jsonschema python3-rfc3987"
diff --git a/poky/meta/recipes-devtools/python/python3-hatchling_1.8.1.bb b/poky/meta/recipes-devtools/python/python3-hatchling_1.9.0.bb
index bfdb664715..011f5ed110 100644
--- a/poky/meta/recipes-devtools/python/python3-hatchling_1.8.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-hatchling_1.9.0.bb
@@ -8,7 +8,7 @@ inherit pypi python_hatchling
DEPENDS += "python3-pluggy-native python3-tomli-native python3-pathspec-native python3-packaging-native python3-editables-native"
DEPENDS:remove:class-native = "python3-hatchling-native"
-SRC_URI[sha256sum] = "448b04b23faed669b2b565b998ac955af4feea66c5deed3a1212ac9399d2e1cd"
+SRC_URI[sha256sum] = "b57c7362f437b9426e4b94228a21d2ac5804fbb2abcb01adde2544a35bb303cd"
do_compile:prepend() {
export PYTHONPATH=src
diff --git a/poky/meta/recipes-devtools/python/python3-hypothesis_6.46.11.bb b/poky/meta/recipes-devtools/python/python3-hypothesis_6.54.5.bb
index 1d9772d4ff..9adb614493 100644
--- a/poky/meta/recipes-devtools/python/python3-hypothesis_6.46.11.bb
+++ b/poky/meta/recipes-devtools/python/python3-hypothesis_6.54.5.bb
@@ -13,7 +13,7 @@ SRC_URI += " \
file://test_rle.py \
"
-SRC_URI[sha256sum] = "f5c1cf61b24b094355577a6b8fbbb8eb54c1b0216fbc0519af97c46bddf43c42"
+SRC_URI[sha256sum] = "8a9056825695f415bfad4e808ae719fc01383a9ab659775319724365afcc7ec7"
RDEPENDS:${PN} += " \
python3-attrs \
diff --git a/poky/meta/recipes-devtools/python/python3-idna_3.3.bb b/poky/meta/recipes-devtools/python/python3-idna_3.4.bb
index ee92f44fd5..41a666f3f4 100644
--- a/poky/meta/recipes-devtools/python/python3-idna_3.3.bb
+++ b/poky/meta/recipes-devtools/python/python3-idna_3.4.bb
@@ -3,14 +3,9 @@ HOMEPAGE = "https://github.com/kjd/idna"
LICENSE = "BSD-3-Clause & Python-2.0 & Unicode-TOU"
LIC_FILES_CHKSUM = "file://LICENSE.md;md5=239668a7c6066d9e0c5382e9c8c6c0e1"
-SRC_URI[sha256sum] = "9d643ff0a55b762d5cdb124b8eaa99c66322e2157b69160bc32796e824360e6d"
+SRC_URI[sha256sum] = "814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4"
-inherit pypi setuptools3
-
-# Remove bundled egg-info
-do_compile:prepend() {
- rm -rf ${S}/idna.egg-info
-}
+inherit pypi python_flit_core
RDEPENDS:${PN}:class-target = "\
${PYTHON_PN}-codecs \
diff --git a/poky/meta/recipes-devtools/python/python3-lxml_4.9.1.bb b/poky/meta/recipes-devtools/python/python3-lxml_4.9.1.bb
new file mode 100644
index 0000000000..92a30f7907
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-lxml_4.9.1.bb
@@ -0,0 +1,42 @@
+SUMMARY = "Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API."
+DESCRIPTION = "lxml is a Pythonic, mature binding for the libxml2 and \
+libxslt libraries. It provides safe and convenient access to these \
+libraries using the ElementTree API. It extends the ElementTree API \
+significantly to offer support for XPath, RelaxNG, XML Schema, XSLT, \
+C14N and much more."
+HOMEPAGE = "https://lxml.de/"
+SECTION = "devel/python"
+LICENSE = "BSD-3-Clause & GPL-2.0-only & MIT & PSF-2.0"
+LIC_FILES_CHKSUM = "file://LICENSES.txt;md5=e4c045ebad958ead4b48008f70838403 \
+ file://doc/licenses/elementtree.txt;md5=eb34d036a6e3d56314ee49a6852ac891 \
+ file://doc/licenses/BSD.txt;md5=700a1fc17f4797d4f2d34970c8ee694b \
+ file://doc/licenses/GPL.txt;md5=94d55d512a9ba36caa9b7df079bae19f \
+ file://src/lxml/isoschematron/resources/rng/iso-schematron.rng;beginline=2;endline=7;md5=fc85684a8dd5fa272c086bceb0d99e10 \
+ file://src/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_message.xsl;beginline=2;endline=24;md5=cc86b7b2bbc678e13f58ea403eb9929b \
+ file://src/lxml/isoschematron/resources/xsl/RNG2Schtrn.xsl;beginline=2;endline=7;md5=5b03236d293dc3784205542b409d2f53 \
+ "
+
+DEPENDS += "libxml2 libxslt"
+
+SRC_URI[sha256sum] = "fe749b052bb7233fe5d072fcb549221a8cb1a16725c47c37e42b0b9cb3ff2c3f"
+
+SRC_URI += "${PYPI_SRC_URI}"
+inherit pkgconfig pypi setuptools3
+
+# {standard input}: Assembler messages:
+# {standard input}:1488805: Error: branch out of range
+DEBUG_OPTIMIZATION:remove:mips = " -Og"
+DEBUG_OPTIMIZATION:append:mips = " -O"
+BUILD_OPTIMIZATION:remove:mips = " -Og"
+BUILD_OPTIMIZATION:append:mips = " -O"
+
+DEBUG_OPTIMIZATION:remove:mipsel = " -Og"
+DEBUG_OPTIMIZATION:append:mipsel = " -O"
+BUILD_OPTIMIZATION:remove:mipsel = " -Og"
+BUILD_OPTIMIZATION:append:mipsel = " -O"
+
+BBCLASSEXTEND = "native nativesdk"
+
+RDEPENDS:${PN} += "libxml2 libxslt ${PYTHON_PN}-compression"
+
+CLEANBROKEN = "1"
diff --git a/poky/meta/recipes-devtools/python/python3-mako_1.2.1.bb b/poky/meta/recipes-devtools/python/python3-mako_1.2.2.bb
index 8155c37984..e3774ee621 100644
--- a/poky/meta/recipes-devtools/python/python3-mako_1.2.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-mako_1.2.2.bb
@@ -8,7 +8,7 @@ PYPI_PACKAGE = "Mako"
inherit pypi python_setuptools_build_meta
-SRC_URI[sha256sum] = "f054a5ff4743492f1aa9ecc47172cb33b42b9d993cffcc146c9de17e717b0307"
+SRC_URI[sha256sum] = "3724869b363ba630a272a5f89f68c070352137b8fd1757650017b7e06fda163f"
RDEPENDS:${PN} = "${PYTHON_PN}-html \
${PYTHON_PN}-markupsafe \
diff --git a/poky/meta/recipes-devtools/python/python3-numpy_1.23.2.bb b/poky/meta/recipes-devtools/python/python3-numpy_1.23.3.bb
index 960dcf9410..9d086aedfd 100644
--- a/poky/meta/recipes-devtools/python/python3-numpy_1.23.2.bb
+++ b/poky/meta/recipes-devtools/python/python3-numpy_1.23.3.bb
@@ -7,20 +7,19 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=8026691468924fb6ec155dadfe2a1a7f"
SRCNAME = "numpy"
-SRC_URI = "https://github.com/${SRCNAME}/${SRCNAME}/releases/download/v${PV}/${SRCNAME}-${PV}.tar.gz \
+SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${SRCNAME}-${PV}.tar.gz \
file://0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch \
file://0001-numpy-core-Define-RISCV-32-support.patch \
file://run-ptest \
file://0001-generate_umath.py-do-not-write-full-path-to-output-f.patch \
"
-SRC_URI[sha256sum] = "b78d00e48261fbbd04aa0d7427cf78d18401ee0abd89c7559bbf422e5b1c7d01"
+SRC_URI[sha256sum] = "51bf49c0cd1d52be0a240aa66f3458afc4b95d8993d2d04f0d91fa60c10af6cd"
-UPSTREAM_CHECK_URI = "https://github.com/numpy/numpy/releases"
-UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)\.tar"
+GITHUB_BASE_URI = "https://github.com/numpy/numpy/releases"
DEPENDS += "python3-cython-native"
-inherit ptest setuptools3
+inherit ptest setuptools3 github-releases
S = "${WORKDIR}/numpy-${PV}"
diff --git a/poky/meta/recipes-devtools/python/python3-pathspec_0.9.0.bb b/poky/meta/recipes-devtools/python/python3-pathspec_0.10.1.bb
index 641f1cfd87..8f2af0ec99 100644
--- a/poky/meta/recipes-devtools/python/python3-pathspec_0.9.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-pathspec_0.10.1.bb
@@ -4,7 +4,7 @@ SECTION = "devel/python"
LICENSE = "MPL-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=815ca599c9df247a0c7f619bab123dad"
-SRC_URI[sha256sum] = "e564499435a2673d586f6b2130bb5b95f04a3ba06f81b8f895b651a3c76aabb1"
+SRC_URI[sha256sum] = "7ace6161b621d31e7902eb6b5ae148d12cfd23f4a249b9ffb6b9fee12084323d"
inherit pypi setuptools3
diff --git a/poky/meta/recipes-devtools/python/python3-psutil_5.9.1.bb b/poky/meta/recipes-devtools/python/python3-psutil_5.9.2.bb
index 04b6fb02de..5b31014657 100644
--- a/poky/meta/recipes-devtools/python/python3-psutil_5.9.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-psutil_5.9.2.bb
@@ -3,7 +3,7 @@ LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e35fd9f271d19d5f742f20a9d1f8bb8b"
HOMEPAGE = "https://pypi.org/project/psutil/"
-SRC_URI[sha256sum] = "57f1819b5d9e95cdfb0c881a8a5b7d542ed0b7c522d575706a80bedc848c8954"
+SRC_URI[sha256sum] = "feb861a10b6c3bb00701063b37e4afc754f8217f0f09c42280586bd6ac712b5c"
inherit pypi setuptools3
diff --git a/poky/meta/recipes-devtools/python/python3-pycairo_1.21.0.bb b/poky/meta/recipes-devtools/python/python3-pycairo_1.21.0.bb
index 29452c7660..b692067809 100644
--- a/poky/meta/recipes-devtools/python/python3-pycairo_1.21.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-pycairo_1.21.0.bb
@@ -10,14 +10,14 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=f3713ca2c28d9312ad718520b6dc3eee \
# cairo >= 1.14
DEPENDS = "cairo python3"
-SRC_URI = "https://github.com/pygobject/pycairo/releases/download/v${PV}/pycairo-${PV}.tar.gz"
-UPSTREAM_CHECK_URI = "https://github.com/pygobject/pycairo/releases/"
+SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/pycairo-${PV}.tar.gz"
+GITHUB_BASE_URI = "https://github.com/pygobject/pycairo/releases/"
SRC_URI[sha256sum] = "251907f18a552df938aa3386657ff4b5a4937dde70e11aa042bc297957f4b74b"
S = "${WORKDIR}/pycairo-${PV}"
-inherit meson pkgconfig python3targetconfig
+inherit meson pkgconfig python3targetconfig github-releases
CFLAGS += "-fPIC"
diff --git a/poky/meta/recipes-devtools/python/python3-pytest_7.1.2.bb b/poky/meta/recipes-devtools/python/python3-pytest_7.1.3.bb
index c642d9a232..373f7f35fa 100644
--- a/poky/meta/recipes-devtools/python/python3-pytest_7.1.2.bb
+++ b/poky/meta/recipes-devtools/python/python3-pytest_7.1.3.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] = "a06a0425453864a270bc45e71f783330a7428defb4230fb5e6a731fde06ecd45"
+SRC_URI[sha256sum] = "4f365fec2dff9c1162f834d9f18af1ba13062db0c708bf7b946f8a5c76180c39"
DEPENDS += "python3-setuptools-scm-native"
diff --git a/poky/meta/recipes-devtools/python/python3-rfc3986-validator_0.1.1.bb b/poky/meta/recipes-devtools/python/python3-rfc3986-validator_0.1.1.bb
index 4abd181acf..e374979cb4 100644
--- a/poky/meta/recipes-devtools/python/python3-rfc3986-validator_0.1.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-rfc3986-validator_0.1.1.bb
@@ -13,7 +13,7 @@ UPSTREAM_CHECK_REGEX = "/rfc3986-validator/(?P<pver>(\d+[\.\-_]*)+)/"
inherit pypi setuptools3
-SRC_URI:append = " \
+SRC_URI += "\
file://0001-setup.py-move-pytest-runner-to-test_requirements.patch \
"
diff --git a/poky/meta/recipes-devtools/python/python3/python3-manifest.json b/poky/meta/recipes-devtools/python/python3/python3-manifest.json
index 2f5dad6486..2205cf2d2d 100644
--- a/poky/meta/recipes-devtools/python/python3/python3-manifest.json
+++ b/poky/meta/recipes-devtools/python/python3/python3-manifest.json
@@ -1248,5 +1248,16 @@
"${libdir}/python${PYTHON_MAJMIN}/xmlrpc/__pycache__"
],
"cached": []
+ },
+ "zoneinfo": {
+ "summary": "IANA time zone support",
+ "rdepends": [
+ "core"
+ ],
+ "files": [
+ "${libdir}/python${PYTHON_MAJMIN}/zoneinfo",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_zoneinfo.*.so"
+ ],
+ "cached": []
}
}
diff --git a/poky/meta/recipes-devtools/python/python3_3.10.6.bb b/poky/meta/recipes-devtools/python/python3_3.10.6.bb
index 1b28728732..1f8b60a7a5 100644
--- a/poky/meta/recipes-devtools/python/python3_3.10.6.bb
+++ b/poky/meta/recipes-devtools/python/python3_3.10.6.bb
@@ -105,6 +105,7 @@ PACKAGECONFIG:class-target ??= "readline gdbm ${@bb.utils.filter('DISTRO_FEATURE
PACKAGECONFIG:class-native ??= "readline gdbm"
PACKAGECONFIG:class-nativesdk ??= "readline gdbm"
PACKAGECONFIG[readline] = ",,readline"
+PACKAGECONFIG[editline] = "--with-readline=editline,,libedit,,,readline"
# Use profile guided optimisation by running PyBench inside qemu-user
PACKAGECONFIG[pgo] = "--enable-optimizations,,qemu-native"
PACKAGECONFIG[tk] = ",,tk"
diff --git a/poky/meta/recipes-devtools/qemu/qemu-native_7.0.0.bb b/poky/meta/recipes-devtools/qemu/qemu-native_7.1.0.bb
index a94dc0b61e..a94dc0b61e 100644
--- a/poky/meta/recipes-devtools/qemu/qemu-native_7.0.0.bb
+++ b/poky/meta/recipes-devtools/qemu/qemu-native_7.1.0.bb
diff --git a/poky/meta/recipes-devtools/qemu/qemu-system-native_7.0.0.bb b/poky/meta/recipes-devtools/qemu/qemu-system-native_7.1.0.bb
index 5ccede5095..04c7c2a6ac 100644
--- a/poky/meta/recipes-devtools/qemu/qemu-system-native_7.0.0.bb
+++ b/poky/meta/recipes-devtools/qemu/qemu-system-native_7.1.0.bb
@@ -28,5 +28,6 @@ do_install:append() {
rm -rf ${D}${includedir}/qemu-plugin.h
# Install qmp.py to be used with testimage
- install -D ${S}/python/qemu/qmp/__init__.py ${D}${libdir}/qemu-python/qmp.py
+ install -d ${D}${libdir}/qemu-python/qmp/
+ install -D ${S}/python/qemu/qmp/* ${D}${libdir}/qemu-python/qmp/
}
diff --git a/poky/meta/recipes-devtools/qemu/qemu.inc b/poky/meta/recipes-devtools/qemu/qemu.inc
index 56fc7aaf55..612abd240a 100644
--- a/poky/meta/recipes-devtools/qemu/qemu.inc
+++ b/poky/meta/recipes-devtools/qemu/qemu.inc
@@ -27,16 +27,12 @@ SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \
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 \
- file://qemu-7.0.0-glibc-2.36.patch \
- file://CVE-2022-35414.patch \
- file://CVE-2021-3507_1.patch \
- file://CVE-2021-3507_2.patch \
- file://CVE-2022-0216_1.patch \
- file://CVE-2022-0216_2.patch \
+ file://0001-net-tulip-Restrict-DMA-engine-to-memories.patch \
+ file://arm-cpreg-fix.patch \
"
UPSTREAM_CHECK_REGEX = "qemu-(?P<pver>\d+(\.\d+)+)\.tar"
-SRC_URI[sha256sum] = "f6b375c7951f728402798b0baabb2d86478ca53d44cedbefabbe1c46bf46f839"
+SRC_URI[sha256sum] = "a0634e536bded57cf38ec8a751adb124b89c776fe0846f21ab6c6728f1cbbbe6"
SRC_URI:append:class-target = " file://cross.patch"
SRC_URI:append:class-nativesdk = " file://cross.patch"
@@ -75,8 +71,14 @@ do_install_ptest() {
# Strip the paths from the QEMU variable, we can use PATH
sed -i -e "s#^QEMU=.*/qemu-#QEMU=qemu-#g" ${D}${PTEST_PATH}/tests/tcg/*.mak
- # Strip compiler flags as they break reproducibility
- sed -i -e "s,CROSS_CC_GUEST=.*,CROSS_CC_GUEST=," ${D}${PTEST_PATH}/tests/tcg/*.mak
+ # Strip compiler flags as they break reproducibility
+ sed -i -e "s,^CC=.*,CC=gcc," \
+ -e "s,^CCAS=.*,CCAS=gcc," \
+ -e "s,^LD=.*,LD=ld," ${D}${PTEST_PATH}/tests/tcg/*.mak
+
+ # Update SRC_PATH variable to the right place on target
+ sed -i -e "s#^SRC_PATH=.*#SRC_PATH=${PTEST_PATH}#g" ${D}${PTEST_PATH}/tests/tcg/*.mak
+
}
# QEMU_TARGETS is overridable variable
@@ -151,7 +153,6 @@ PACKAGECONFIG[uring] = "--enable-linux-io-uring,--disable-linux-io-uring,liburin
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,"
-PACKAGECONFIG[vnc-png] = "--enable-vnc --enable-vnc-png,--disable-vnc-png,libpng,"
PACKAGECONFIG[libcurl] = "--enable-curl,--disable-curl,curl,"
PACKAGECONFIG[nss] = "--enable-smartcard,--disable-smartcard,nss,"
PACKAGECONFIG[curses] = "--enable-curses,--disable-curses,ncurses,"
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0001-net-tulip-Restrict-DMA-engine-to-memories.patch b/poky/meta/recipes-devtools/qemu/qemu/0001-net-tulip-Restrict-DMA-engine-to-memories.patch
new file mode 100644
index 0000000000..6c85a77ba7
--- /dev/null
+++ b/poky/meta/recipes-devtools/qemu/qemu/0001-net-tulip-Restrict-DMA-engine-to-memories.patch
@@ -0,0 +1,64 @@
+CVE: CVE-2022-2962
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+From 5c5c50b0a73d78ffe18336c9996fef5eae9bbbb0 Mon Sep 17 00:00:00 2001
+From: Zheyu Ma <zheyuma97@gmail.com>
+Date: Sun, 21 Aug 2022 20:43:43 +0800
+Subject: [PATCH] net: tulip: Restrict DMA engine to memories
+
+The DMA engine is started by I/O access and then itself accesses the
+I/O registers, triggering a reentrancy bug.
+
+The following log can reveal it:
+==5637==ERROR: AddressSanitizer: stack-overflow
+ #0 0x5595435f6078 in tulip_xmit_list_update qemu/hw/net/tulip.c:673
+ #1 0x5595435f204a in tulip_write qemu/hw/net/tulip.c:805:13
+ #2 0x559544637f86 in memory_region_write_accessor qemu/softmmu/memory.c:492:5
+ #3 0x5595446379fa in access_with_adjusted_size qemu/softmmu/memory.c:554:18
+ #4 0x5595446372fa in memory_region_dispatch_write qemu/softmmu/memory.c
+ #5 0x55954468b74c in flatview_write_continue qemu/softmmu/physmem.c:2825:23
+ #6 0x559544683662 in flatview_write qemu/softmmu/physmem.c:2867:12
+ #7 0x5595446833f3 in address_space_write qemu/softmmu/physmem.c:2963:18
+ #8 0x5595435fb082 in dma_memory_rw_relaxed qemu/include/sysemu/dma.h:87:12
+ #9 0x5595435fb082 in dma_memory_rw qemu/include/sysemu/dma.h:130:12
+ #10 0x5595435fb082 in dma_memory_write qemu/include/sysemu/dma.h:171:12
+ #11 0x5595435fb082 in stl_le_dma qemu/include/sysemu/dma.h:272:1
+ #12 0x5595435fb082 in stl_le_pci_dma qemu/include/hw/pci/pci.h:910:1
+ #13 0x5595435fb082 in tulip_desc_write qemu/hw/net/tulip.c:101:9
+ #14 0x5595435f7e3d in tulip_xmit_list_update qemu/hw/net/tulip.c:706:9
+ #15 0x5595435f204a in tulip_write qemu/hw/net/tulip.c:805:13
+
+Fix this bug by restricting the DMA engine to memories regions.
+
+Signed-off-by: Zheyu Ma <zheyuma97@gmail.com>
+Signed-off-by: Jason Wang <jasowang@redhat.com>
+---
+ hw/net/tulip.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/hw/net/tulip.c b/hw/net/tulip.c
+index 097e905bec..b9e42c322a 100644
+--- a/hw/net/tulip.c
++++ b/hw/net/tulip.c
+@@ -70,7 +70,7 @@ static const VMStateDescription vmstate_pci_tulip = {
+ static void tulip_desc_read(TULIPState *s, hwaddr p,
+ struct tulip_descriptor *desc)
+ {
+- const MemTxAttrs attrs = MEMTXATTRS_UNSPECIFIED;
++ const MemTxAttrs attrs = { .memory = true };
+
+ if (s->csr[0] & CSR0_DBO) {
+ ldl_be_pci_dma(&s->dev, p, &desc->status, attrs);
+@@ -88,7 +88,7 @@ static void tulip_desc_read(TULIPState *s, hwaddr p,
+ static void tulip_desc_write(TULIPState *s, hwaddr p,
+ struct tulip_descriptor *desc)
+ {
+- const MemTxAttrs attrs = MEMTXATTRS_UNSPECIFIED;
++ const MemTxAttrs attrs = { .memory = true };
+
+ if (s->csr[0] & CSR0_DBO) {
+ stl_be_pci_dma(&s->dev, p, desc->status, attrs);
+--
+2.34.1
+
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch b/poky/meta/recipes-devtools/qemu/qemu/0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch
index 826d42fc20..810c74fabd 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch
@@ -1,28 +1,28 @@
-From 52c38fa9f3a790a7c2805e7d8cce3ea9262d6ae2 Mon Sep 17 00:00:00 2001
+CVE: CVE-2022-1050
+Upstream-Status: Submitted [https://lore.kernel.org/qemu-devel/20220403095234.2210-1-yuval.shaia.ml@gmail.com/]
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+From dbdef95c272e8f3ec037c3db4197c66002e30995 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
+Date: Sun, 3 Apr 2022 12:52:34 +0300
+Subject: [PATCH] hw/pvrdma: Protect against buggy or malicious guest driver
Guest driver might execute HW commands when shared buffers are not yet
allocated.
-This might happen on purpose (malicious guest) or because some other
-guest/host address mapping.
+This could happen on purpose (malicious guest) or because of some other
+guest/host address mapping error.
We need to protect againts such case.
-Reported-by: Mauro Matteo Cascella <mcascell@redhat.com>
-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]
+Fixes: CVE-2022-1050
+Reported-by: Raven <wxhusst@gmail.com>
+Signed-off-by: Yuval Shaia <yuval.shaia.ml@gmail.com>
---
- hw/rdma/vmw/pvrdma_cmd.c | 6 ++++++
- hw/rdma/vmw/pvrdma_main.c | 3 ++-
- 2 files changed, 8 insertions(+), 1 deletion(-)
+ hw/rdma/vmw/pvrdma_cmd.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
diff --git a/hw/rdma/vmw/pvrdma_cmd.c b/hw/rdma/vmw/pvrdma_cmd.c
-index da7ddfa54..89db963c4 100644
+index da7ddfa548..89db963c46 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)
@@ -38,20 +38,6 @@ index da7ddfa54..89db963c4 100644
if (dsr_info->req->hdr.cmd >= sizeof(cmd_handlers) /
sizeof(struct cmd_handler)) {
rdma_error_report("Unsupported command");
-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;
-
-- if (dev->dsr_info.dsr == NULL) {
-+ if (!dev->dsr_info.dsr) {
-+ /* Buggy or malicious guest driver */
- rdma_error_report("Can't initialized DSR");
- return;
- }
--
-2.30.2
+2.34.1
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2021-3507_1.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2021-3507_1.patch
deleted file mode 100644
index 24fd2c5ed3..0000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/CVE-2021-3507_1.patch
+++ /dev/null
@@ -1,92 +0,0 @@
-From 57a89cc36ead7234e540d0ecbe1a792ab6b04cb7 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@redhat.com>
-Date: Thu, 18 Nov 2021 12:57:32 +0100
-Subject: [PATCH 1/2] hw/block/fdc: Prevent end-of-track overrun
- (CVE-2021-3507)
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Per the 82078 datasheet, if the end-of-track (EOT byte in
-the FIFO) is more than the number of sectors per side, the
-command is terminated unsuccessfully:
-
-* 5.2.5 DATA TRANSFER TERMINATION
-
- The 82078 supports terminal count explicitly through
- the TC pin and implicitly through the underrun/over-
- run and end-of-track (EOT) functions. For full sector
- transfers, the EOT parameter can define the last
- sector to be transferred in a single or multisector
- transfer. If the last sector to be transferred is a par-
- tial sector, the host can stop transferring the data in
- mid-sector, and the 82078 will continue to complete
- the sector as if a hardware TC was received. The
- only difference between these implicit functions and
- TC is that they return "abnormal termination" result
- status. Such status indications can be ignored if they
- were expected.
-
-* 6.1.3 READ TRACK
-
- This command terminates when the EOT specified
- number of sectors have been read. If the 82078
- does not find an I D Address Mark on the diskette
- after the second· occurrence of a pulse on the
- INDX# pin, then it sets the IC code in Status Regis-
- ter 0 to "01" (Abnormal termination), sets the MA bit
- in Status Register 1 to "1", and terminates the com-
- mand.
-
-* 6.1.6 VERIFY
-
- Refer to Table 6-6 and Table 6-7 for information
- concerning the values of MT and EC versus SC and
- EOT value.
-
-* Table 6·6. Result Phase Table
-
-* Table 6-7. Verify Command Result Phase Table
-
-Fix by aborting the transfer when EOT > # Sectors Per Side.
-
-Cc: qemu-stable@nongnu.org
-Cc: Hervé Poussineau <hpoussin@reactos.org>
-Fixes: baca51faff0 ("floppy driver: disk geometry auto detect")
-Reported-by: Alexander Bulekov <alxndr@bu.edu>
-Resolves: https://gitlab.com/qemu-project/qemu/-/issues/339
-Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
-Message-Id: <20211118115733.4038610-2-philmd@redhat.com>
-Reviewed-by: Hanna Reitz <hreitz@redhat.com>
-Signed-off-by: Kevin Wolf <kwolf@redhat.com>
-
-Upstream-Status: Backport [defac5e2fbddf8423a354ff0454283a2115e1367]
-CVE: CVE-2021-3507
-
-Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
----
- hw/block/fdc.c | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/hw/block/fdc.c b/hw/block/fdc.c
-index 347875a0c..57bb35579 100644
---- a/hw/block/fdc.c
-+++ b/hw/block/fdc.c
-@@ -1530,6 +1530,14 @@ static void fdctrl_start_transfer(FDCtrl *fdctrl, int direction)
- int tmp;
- fdctrl->data_len = 128 << (fdctrl->fifo[5] > 7 ? 7 : fdctrl->fifo[5]);
- tmp = (fdctrl->fifo[6] - ks + 1);
-+ if (tmp < 0) {
-+ FLOPPY_DPRINTF("invalid EOT: %d\n", tmp);
-+ fdctrl_stop_transfer(fdctrl, FD_SR0_ABNTERM, FD_SR1_MA, 0x00);
-+ fdctrl->fifo[3] = kt;
-+ fdctrl->fifo[4] = kh;
-+ fdctrl->fifo[5] = ks;
-+ return;
-+ }
- if (fdctrl->fifo[0] & 0x80)
- tmp += fdctrl->fifo[6];
- fdctrl->data_len *= tmp;
---
-2.33.0
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2021-3507_2.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2021-3507_2.patch
deleted file mode 100644
index acc93e897b..0000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/CVE-2021-3507_2.patch
+++ /dev/null
@@ -1,115 +0,0 @@
-From 3e8601ec707dcbc3c768f7733d016dc70c947e4a Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@redhat.com>
-Date: Thu, 18 Nov 2021 12:57:33 +0100
-Subject: [PATCH 2/2] tests/qtest/fdc-test: Add a regression test for
- CVE-2021-3507
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Add the reproducer from https://gitlab.com/qemu-project/qemu/-/issues/339
-
-Without the previous commit, when running 'make check-qtest-i386'
-with QEMU configured with '--enable-sanitizers' we get:
-
- ==4028352==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x619000062a00 at pc 0x5626d03c491a bp 0x7ffdb4199410 sp 0x7ffdb4198bc0
- READ of size 786432 at 0x619000062a00 thread T0
- #0 0x5626d03c4919 in __asan_memcpy (qemu-system-i386+0x1e65919)
- #1 0x5626d1c023cc in flatview_write_continue softmmu/physmem.c:2787:13
- #2 0x5626d1bf0c0f in flatview_write softmmu/physmem.c:2822:14
- #3 0x5626d1bf0798 in address_space_write softmmu/physmem.c:2914:18
- #4 0x5626d1bf0f37 in address_space_rw softmmu/physmem.c:2924:16
- #5 0x5626d1bf14c8 in cpu_physical_memory_rw softmmu/physmem.c:2933:5
- #6 0x5626d0bd5649 in cpu_physical_memory_write include/exec/cpu-common.h:82:5
- #7 0x5626d0bd0a07 in i8257_dma_write_memory hw/dma/i8257.c:452:9
- #8 0x5626d09f825d in fdctrl_transfer_handler hw/block/fdc.c:1616:13
- #9 0x5626d0a048b4 in fdctrl_start_transfer hw/block/fdc.c:1539:13
- #10 0x5626d09f4c3e in fdctrl_write_data hw/block/fdc.c:2266:13
- #11 0x5626d09f22f7 in fdctrl_write hw/block/fdc.c:829:9
- #12 0x5626d1c20bc5 in portio_write softmmu/ioport.c:207:17
-
- 0x619000062a00 is located 0 bytes to the right of 512-byte region [0x619000062800,0x619000062a00)
- allocated by thread T0 here:
- #0 0x5626d03c66ec in posix_memalign (qemu-system-i386+0x1e676ec)
- #1 0x5626d2b988d4 in qemu_try_memalign util/oslib-posix.c:210:11
- #2 0x5626d2b98b0c in qemu_memalign util/oslib-posix.c:226:27
- #3 0x5626d09fbaf0 in fdctrl_realize_common hw/block/fdc.c:2341:20
- #4 0x5626d0a150ed in isabus_fdc_realize hw/block/fdc-isa.c:113:5
- #5 0x5626d2367935 in device_set_realized hw/core/qdev.c:531:13
-
- SUMMARY: AddressSanitizer: heap-buffer-overflow (qemu-system-i386+0x1e65919) in __asan_memcpy
- Shadow bytes around the buggy address:
- 0x0c32800044f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
- 0x0c3280004500: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- 0x0c3280004510: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- 0x0c3280004520: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- 0x0c3280004530: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- =>0x0c3280004540:[fa]fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
- 0x0c3280004550: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
- 0x0c3280004560: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
- 0x0c3280004570: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
- 0x0c3280004580: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
- 0x0c3280004590: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
- Shadow byte legend (one shadow byte represents 8 application bytes):
- Addressable: 00
- Heap left redzone: fa
- Freed heap region: fd
- ==4028352==ABORTING
-
-[ kwolf: Added snapshot=on to prevent write file lock failure ]
-
-Reported-by: Alexander Bulekov <alxndr@bu.edu>
-Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
-Reviewed-by: Alexander Bulekov <alxndr@bu.edu>
-Signed-off-by: Kevin Wolf <kwolf@redhat.com>
-
-Upstream-Status: Backport [46609b90d9e3a6304def11038a76b58ff43f77bc]
-CVE: CVE-2021-3507
-
-Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
----
- tests/qtest/fdc-test.c | 21 +++++++++++++++++++++
- 1 file changed, 21 insertions(+)
-
-diff --git a/tests/qtest/fdc-test.c b/tests/qtest/fdc-test.c
-index b0d40012e..1d4f85212 100644
---- a/tests/qtest/fdc-test.c
-+++ b/tests/qtest/fdc-test.c
-@@ -583,6 +583,26 @@ static void test_cve_2021_20196(void)
- qtest_quit(s);
- }
-
-+static void test_cve_2021_3507(void)
-+{
-+ QTestState *s;
-+
-+ s = qtest_initf("-nographic -m 32M -nodefaults "
-+ "-drive file=%s,format=raw,if=floppy,snapshot=on",
-+ test_image);
-+ qtest_outl(s, 0x9, 0x0a0206);
-+ qtest_outw(s, 0x3f4, 0x1600);
-+ qtest_outw(s, 0x3f4, 0x0000);
-+ qtest_outw(s, 0x3f4, 0x0000);
-+ qtest_outw(s, 0x3f4, 0x0000);
-+ qtest_outw(s, 0x3f4, 0x0200);
-+ qtest_outw(s, 0x3f4, 0x0200);
-+ qtest_outw(s, 0x3f4, 0x0000);
-+ qtest_outw(s, 0x3f4, 0x0000);
-+ qtest_outw(s, 0x3f4, 0x0000);
-+ qtest_quit(s);
-+}
-+
- int main(int argc, char **argv)
- {
- int fd;
-@@ -614,6 +634,7 @@ int main(int argc, char **argv)
- qtest_add_func("/fdc/read_no_dma_19", test_read_no_dma_19);
- qtest_add_func("/fdc/fuzz-registers", fuzz_registers);
- qtest_add_func("/fdc/fuzz/cve_2021_20196", test_cve_2021_20196);
-+ qtest_add_func("/fdc/fuzz/cve_2021_3507", test_cve_2021_3507);
-
- ret = g_test_run();
-
---
-2.33.0
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2022-0216_1.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2022-0216_1.patch
deleted file mode 100644
index 56fc34ce5a..0000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/CVE-2022-0216_1.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From f37ac8619a39498edd225c4a0b3039b28814833d Mon Sep 17 00:00:00 2001
-From: Mauro Matteo Cascella <mcascell@redhat.com>
-Date: Tue, 5 Jul 2022 22:05:43 +0200
-Subject: [PATCH 1/2] scsi/lsi53c895a: fix use-after-free in lsi_do_msgout
- (CVE-2022-0216)
-
-Set current_req->req to NULL to prevent reusing a free'd buffer in case of
-repeated SCSI cancel requests. Thanks to Thomas Huth for suggesting the patch.
-
-Fixes: CVE-2022-0216
-Resolves: https://gitlab.com/qemu-project/qemu/-/issues/972
-Signed-off-by: Mauro Matteo Cascella <mcascell@redhat.com>
-Reviewed-by: Thomas Huth <thuth@redhat.com>
-Message-Id: <20220705200543.2366809-1-mcascell@redhat.com>
-Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-
-Upstream-Status: Backport [6c8fa961da5e60f574bb52fd3ad44b1e9e8ad4b8]
-CVE: CVE-2022-0216
-
-Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
----
- hw/scsi/lsi53c895a.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/hw/scsi/lsi53c895a.c b/hw/scsi/lsi53c895a.c
-index c8773f73f..99ea42d49 100644
---- a/hw/scsi/lsi53c895a.c
-+++ b/hw/scsi/lsi53c895a.c
-@@ -1028,8 +1028,9 @@ static void lsi_do_msgout(LSIState *s)
- case 0x0d:
- /* The ABORT TAG message clears the current I/O process only. */
- trace_lsi_do_msgout_abort(current_tag);
-- if (current_req) {
-+ if (current_req && current_req->req) {
- scsi_req_cancel(current_req->req);
-+ current_req->req = NULL;
- }
- lsi_disconnect(s);
- break;
---
-2.33.0
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2022-0216_2.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2022-0216_2.patch
deleted file mode 100644
index f332154b6a..0000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/CVE-2022-0216_2.patch
+++ /dev/null
@@ -1,146 +0,0 @@
-From 5451bf6db85ce3da1238e9154d051ebccec8f171 Mon Sep 17 00:00:00 2001
-From: Mauro Matteo Cascella <mcascell@redhat.com>
-Date: Mon, 11 Jul 2022 14:33:16 +0200
-Subject: [PATCH 2/2] scsi/lsi53c895a: really fix use-after-free in
- lsi_do_msgout (CVE-2022-0216)
-
-Set current_req to NULL, not current_req->req, to prevent reusing a free'd
-buffer in case of repeated SCSI cancel requests. Also apply the fix to
-CLEAR QUEUE and BUS DEVICE RESET messages as well, since they also cancel
-the request.
-
-Thanks to Alexander Bulekov for providing a reproducer.
-
-Fixes: CVE-2022-0216
-Resolves: https://gitlab.com/qemu-project/qemu/-/issues/972
-Signed-off-by: Mauro Matteo Cascella <mcascell@redhat.com>
-Tested-by: Alexander Bulekov <alxndr@bu.edu>
-Message-Id: <20220711123316.421279-1-mcascell@redhat.com>
-Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-
-Upstream-Status: Backport [4367a20cc442c56b05611b4224de9a61908f9eac]
-CVE: CVE-2022-0216
-
-Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
----
- hw/scsi/lsi53c895a.c | 3 +-
- tests/qtest/fuzz-lsi53c895a-test.c | 76 ++++++++++++++++++++++++++++++
- 2 files changed, 78 insertions(+), 1 deletion(-)
-
-diff --git a/hw/scsi/lsi53c895a.c b/hw/scsi/lsi53c895a.c
-index 99ea42d49..ad5f5e5f3 100644
---- a/hw/scsi/lsi53c895a.c
-+++ b/hw/scsi/lsi53c895a.c
-@@ -1030,7 +1030,7 @@ static void lsi_do_msgout(LSIState *s)
- trace_lsi_do_msgout_abort(current_tag);
- if (current_req && current_req->req) {
- scsi_req_cancel(current_req->req);
-- current_req->req = NULL;
-+ current_req = NULL;
- }
- lsi_disconnect(s);
- break;
-@@ -1056,6 +1056,7 @@ static void lsi_do_msgout(LSIState *s)
- /* clear the current I/O process */
- if (s->current) {
- scsi_req_cancel(s->current->req);
-+ current_req = NULL;
- }
-
- /* As the current implemented devices scsi_disk and scsi_generic
-diff --git a/tests/qtest/fuzz-lsi53c895a-test.c b/tests/qtest/fuzz-lsi53c895a-test.c
-index ba5d46897..c1af0ab1c 100644
---- a/tests/qtest/fuzz-lsi53c895a-test.c
-+++ b/tests/qtest/fuzz-lsi53c895a-test.c
-@@ -8,6 +8,79 @@
- #include "qemu/osdep.h"
- #include "libqos/libqtest.h"
-
-+/*
-+ * This used to trigger a UAF in lsi_do_msgout()
-+ * https://gitlab.com/qemu-project/qemu/-/issues/972
-+ */
-+static void test_lsi_do_msgout_cancel_req(void)
-+{
-+ QTestState *s;
-+
-+ if (sizeof(void *) == 4) {
-+ g_test_skip("memory size too big for 32-bit build");
-+ return;
-+ }
-+
-+ s = qtest_init("-M q35 -m 4G -display none -nodefaults "
-+ "-device lsi53c895a,id=scsi "
-+ "-device scsi-hd,drive=disk0 "
-+ "-drive file=null-co://,id=disk0,if=none,format=raw");
-+
-+ qtest_outl(s, 0xcf8, 0x80000810);
-+ qtest_outl(s, 0xcf8, 0xc000);
-+ qtest_outl(s, 0xcf8, 0x80000810);
-+ qtest_outw(s, 0xcfc, 0x7);
-+ qtest_outl(s, 0xcf8, 0x80000810);
-+ qtest_outl(s, 0xcfc, 0xc000);
-+ qtest_outl(s, 0xcf8, 0x80000804);
-+ qtest_outw(s, 0xcfc, 0x05);
-+ qtest_writeb(s, 0x69736c10, 0x08);
-+ qtest_writeb(s, 0x69736c13, 0x58);
-+ qtest_writeb(s, 0x69736c1a, 0x01);
-+ qtest_writeb(s, 0x69736c1b, 0x06);
-+ qtest_writeb(s, 0x69736c22, 0x01);
-+ qtest_writeb(s, 0x69736c23, 0x07);
-+ qtest_writeb(s, 0x69736c2b, 0x02);
-+ qtest_writeb(s, 0x69736c48, 0x08);
-+ qtest_writeb(s, 0x69736c4b, 0x58);
-+ qtest_writeb(s, 0x69736c52, 0x04);
-+ qtest_writeb(s, 0x69736c53, 0x06);
-+ qtest_writeb(s, 0x69736c5b, 0x02);
-+ qtest_outl(s, 0xc02d, 0x697300);
-+ qtest_writeb(s, 0x5a554662, 0x01);
-+ qtest_writeb(s, 0x5a554663, 0x07);
-+ qtest_writeb(s, 0x5a55466a, 0x10);
-+ qtest_writeb(s, 0x5a55466b, 0x22);
-+ qtest_writeb(s, 0x5a55466c, 0x5a);
-+ qtest_writeb(s, 0x5a55466d, 0x5a);
-+ qtest_writeb(s, 0x5a55466e, 0x34);
-+ qtest_writeb(s, 0x5a55466f, 0x5a);
-+ qtest_writeb(s, 0x5a345a5a, 0x77);
-+ qtest_writeb(s, 0x5a345a5b, 0x55);
-+ qtest_writeb(s, 0x5a345a5c, 0x51);
-+ qtest_writeb(s, 0x5a345a5d, 0x27);
-+ qtest_writeb(s, 0x27515577, 0x41);
-+ qtest_outl(s, 0xc02d, 0x5a5500);
-+ qtest_writeb(s, 0x364001d0, 0x08);
-+ qtest_writeb(s, 0x364001d3, 0x58);
-+ qtest_writeb(s, 0x364001da, 0x01);
-+ qtest_writeb(s, 0x364001db, 0x26);
-+ qtest_writeb(s, 0x364001dc, 0x0d);
-+ qtest_writeb(s, 0x364001dd, 0xae);
-+ qtest_writeb(s, 0x364001de, 0x41);
-+ qtest_writeb(s, 0x364001df, 0x5a);
-+ qtest_writeb(s, 0x5a41ae0d, 0xf8);
-+ qtest_writeb(s, 0x5a41ae0e, 0x36);
-+ qtest_writeb(s, 0x5a41ae0f, 0xd7);
-+ qtest_writeb(s, 0x5a41ae10, 0x36);
-+ qtest_writeb(s, 0x36d736f8, 0x0c);
-+ qtest_writeb(s, 0x36d736f9, 0x80);
-+ qtest_writeb(s, 0x36d736fa, 0x0d);
-+ qtest_outl(s, 0xc02d, 0x364000);
-+
-+ qtest_quit(s);
-+}
-+
- /*
- * This used to trigger the assert in lsi_do_dma()
- * https://bugs.launchpad.net/qemu/+bug/697510
-@@ -48,5 +121,8 @@ int main(int argc, char **argv)
- test_lsi_do_dma_empty_queue);
- }
-
-+ qtest_add_func("fuzz/lsi53c895a/lsi_do_msgout_cancel_req",
-+ test_lsi_do_msgout_cancel_req);
-+
- return g_test_run();
- }
---
-2.33.0
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2022-35414.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2022-35414.patch
deleted file mode 100644
index fe79a749ae..0000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/CVE-2022-35414.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From a10c33942dc8cb31b3762b9dd4adde4c490eed9c Mon Sep 17 00:00:00 2001
-From: Hitendra Prajapati <hprajapati@mvista.com>
-Date: Wed, 3 Aug 2022 10:11:11 +0530
-Subject: [PATCH] CVE-2022-35414
-
-Upstream-Status: Backport [https://github.com/qemu/qemu/commit/418ade7849ce7641c0f7333718caf5091a02fd4c]
-CVE: CVE-2022-35414
-Signed-off-by: Hitendra Prajapati <hprajapati@mvista.com>
----
- softmmu/physmem.c | 13 ++++++++++++-
- 1 file changed, 12 insertions(+), 1 deletion(-)
-
-diff --git a/softmmu/physmem.c b/softmmu/physmem.c
-index 4e1b27a20..ad8a90dec 100644
---- a/softmmu/physmem.c
-+++ b/softmmu/physmem.c
-@@ -669,7 +669,7 @@ void tcg_iommu_init_notifier_list(CPUState *cpu)
-
- /* Called from RCU critical section */
- MemoryRegionSection *
--address_space_translate_for_iotlb(CPUState *cpu, int asidx, hwaddr addr,
-+address_space_translate_for_iotlb(CPUState *cpu, int asidx, hwaddr orig_addr,
- hwaddr *xlat, hwaddr *plen,
- MemTxAttrs attrs, int *prot)
- {
-@@ -678,6 +678,7 @@ address_space_translate_for_iotlb(CPUState *cpu, int asidx, hwaddr addr,
- IOMMUMemoryRegionClass *imrc;
- IOMMUTLBEntry iotlb;
- int iommu_idx;
-+ hwaddr addr = orig_addr;
- AddressSpaceDispatch *d =
- qatomic_rcu_read(&cpu->cpu_ases[asidx].memory_dispatch);
-
-@@ -722,6 +723,16 @@ address_space_translate_for_iotlb(CPUState *cpu, int asidx, hwaddr addr,
- return section;
-
- translate_fail:
-+ /*
-+ * We should be given a page-aligned address -- certainly
-+ * tlb_set_page_with_attrs() does so. The page offset of xlat
-+ * is used to index sections[], and PHYS_SECTION_UNASSIGNED = 0.
-+ * The page portion of xlat will be logged by memory_region_access_valid()
-+ * when this memory access is rejected, so use the original untranslated
-+ * physical address.
-+ */
-+ assert((orig_addr & ~TARGET_PAGE_MASK) == 0);
-+ *xlat = orig_addr;
- return &d->map.sections[PHYS_SECTION_UNASSIGNED];
- }
-
---
-2.25.1
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/arm-cpreg-fix.patch b/poky/meta/recipes-devtools/qemu/qemu/arm-cpreg-fix.patch
new file mode 100644
index 0000000000..071691f8ca
--- /dev/null
+++ b/poky/meta/recipes-devtools/qemu/qemu/arm-cpreg-fix.patch
@@ -0,0 +1,27 @@
+target/arm: mark SP_EL1 with ARM_CP_EL3_NO_EL2_KEEP
+
+SP_EL1 must be kept when EL3 is present but EL2 is not. Therefore mark
+it with ARM_CP_EL3_NO_EL2_KEEP.
+
+Fixes: 696ba3771894 ("target/arm: Handle cpreg registration for missing EL")
+Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
+
+Upstream-Status: Submitted [https://lists.gnu.org/archive/html/qemu-devel/2022-09/msg04515.html]
+
+---
+ target/arm/helper.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: qemu-7.1.0/target/arm/helper.c
+===================================================================
+--- qemu-7.1.0.orig/target/arm/helper.c
++++ qemu-7.1.0/target/arm/helper.c
+@@ -4971,7 +4971,7 @@ static const ARMCPRegInfo v8_cp_reginfo[
+ .fieldoffset = offsetof(CPUARMState, sp_el[0]) },
+ { .name = "SP_EL1", .state = ARM_CP_STATE_AA64,
+ .opc0 = 3, .opc1 = 4, .crn = 4, .crm = 1, .opc2 = 0,
+- .access = PL2_RW, .type = ARM_CP_ALIAS,
++ .access = PL2_RW, .type = ARM_CP_ALIAS | ARM_CP_EL3_NO_EL2_KEEP,
+ .fieldoffset = offsetof(CPUARMState, sp_el[1]) },
+ { .name = "SPSel", .state = ARM_CP_STATE_AA64,
+ .opc0 = 3, .opc1 = 0, .crn = 4, .crm = 2, .opc2 = 0,
diff --git a/poky/meta/recipes-devtools/qemu/qemu/cross.patch b/poky/meta/recipes-devtools/qemu/qemu/cross.patch
index d1256a1229..ca2ad361ef 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/cross.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/cross.patch
@@ -14,19 +14,19 @@ Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
configure | 4 ----
1 file changed, 4 deletions(-)
-diff --git a/configure b/configure
-index 7c08c1835..0613279f9 100755
---- a/configure
-+++ b/configure
-@@ -3118,7 +3118,6 @@ if test "$skip_meson" = no; then
- fi
+Index: qemu-7.1.0/configure
+===================================================================
+--- qemu-7.1.0.orig/configure
++++ qemu-7.1.0/configure
+@@ -2710,7 +2710,6 @@ if test "$skip_meson" = no; then
echo "strip = [$(meson_quote $strip)]" >> $cross
+ echo "widl = [$(meson_quote $widl)]" >> $cross
echo "windres = [$(meson_quote $windres)]" >> $cross
- if test "$cross_compile" = "yes"; then
cross_arg="--cross-file config-meson.cross"
echo "[host_machine]" >> $cross
echo "system = '$targetos'" >> $cross
-@@ -3136,9 +3135,6 @@ if test "$skip_meson" = no; then
+@@ -2728,9 +2727,6 @@ if test "$skip_meson" = no; then
else
echo "endian = 'little'" >> $cross
fi
@@ -36,6 +36,3 @@ index 7c08c1835..0613279f9 100755
mv $cross config-meson.cross
rm -rf meson-private meson-info meson-logs
---
-2.30.2
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu_7.0.0.bb b/poky/meta/recipes-devtools/qemu/qemu_7.1.0.bb
index 42e133967e..42e133967e 100644
--- a/poky/meta/recipes-devtools/qemu/qemu_7.0.0.bb
+++ b/poky/meta/recipes-devtools/qemu/qemu_7.1.0.bb
diff --git a/poky/meta/recipes-devtools/repo/repo_2.29.1.bb b/poky/meta/recipes-devtools/repo/repo_2.29.2.bb
index 740132c2f6..42fd18ac24 100644
--- a/poky/meta/recipes-devtools/repo/repo_2.29.1.bb
+++ b/poky/meta/recipes-devtools/repo/repo_2.29.2.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 = "4112c07688d0e0e568478e9f42be349bdd511d45"
+SRCREV = "891e8f72ce3551a19c377456574bbfbeac5c8b8e"
MIRRORS += "git://gerrit.googlesource.com/git-repo.git git://github.com/GerritCodeReview/git-repo.git"
diff --git a/poky/meta/recipes-devtools/rpm/files/0001-Add-a-color-setting-for-mips64_n32-binaries.patch b/poky/meta/recipes-devtools/rpm/files/0001-Add-a-color-setting-for-mips64_n32-binaries.patch
index 331ea849e6..9f5dde0720 100644
--- a/poky/meta/recipes-devtools/rpm/files/0001-Add-a-color-setting-for-mips64_n32-binaries.patch
+++ b/poky/meta/recipes-devtools/rpm/files/0001-Add-a-color-setting-for-mips64_n32-binaries.patch
@@ -11,11 +11,11 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
rpmrc.in | 2 ++
2 files changed, 6 insertions(+)
-diff --git a/build/rpmfc.c b/build/rpmfc.c
-index 10c380ee9..b7655aa93 100644
---- a/build/rpmfc.c
-+++ b/build/rpmfc.c
-@@ -639,6 +639,7 @@ exit:
+Index: git/build/rpmfc.c
+===================================================================
+--- git.orig/build/rpmfc.c
++++ git/build/rpmfc.c
+@@ -645,6 +645,7 @@ exit:
static const struct rpmfcTokens_s rpmfcTokens[] = {
{ "directory", RPMFC_INCLUDE },
@@ -23,7 +23,7 @@ index 10c380ee9..b7655aa93 100644
{ "ELF 32-bit", RPMFC_ELF32|RPMFC_INCLUDE },
{ "ELF 64-bit", RPMFC_ELF64|RPMFC_INCLUDE },
-@@ -1149,6 +1150,9 @@ static uint32_t getElfColor(const char *fn)
+@@ -1150,6 +1151,9 @@ static uint32_t getElfColor(const char *
color = RPMFC_ELF32;
break;
}
@@ -33,11 +33,11 @@ index 10c380ee9..b7655aa93 100644
elf_end(elf);
}
close(fd);
-diff --git a/rpmrc.in b/rpmrc.in
-index 5bd9ba3e5..f15bb8dad 100644
---- a/rpmrc.in
-+++ b/rpmrc.in
-@@ -137,6 +137,8 @@ archcolor: mipsr6el 1
+Index: git/rpmrc.in
+===================================================================
+--- git.orig/rpmrc.in
++++ git/rpmrc.in
+@@ -139,6 +139,8 @@ archcolor: mipsr6el 1
archcolor: mips64r6 2
archcolor: mips64r6el 2
diff --git a/poky/meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch b/poky/meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch
index 4029233fb7..8440c3516d 100644
--- a/poky/meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch
+++ b/poky/meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch
@@ -14,11 +14,11 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
build/pack.c | 4 ----
1 file changed, 4 deletions(-)
-diff --git a/build/pack.c b/build/pack.c
-index e6cec1816..810cd7351 100644
---- a/build/pack.c
-+++ b/build/pack.c
-@@ -724,10 +724,6 @@ static rpmRC packageBinary(rpmSpec spec, Package pkg, const char *cookie, int ch
+Index: git/build/pack.c
+===================================================================
+--- git.orig/build/pack.c
++++ git/build/pack.c
+@@ -709,10 +709,6 @@ static rpmRC packageBinary(rpmSpec spec,
headerPutBin(pkg->header, RPMTAG_SOURCEPKGID, spec->sourcePkgId,16);
}
diff --git a/poky/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch b/poky/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch
index c6cf9d4c88..6f613d0a7d 100644
--- a/poky/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch
+++ b/poky/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch
@@ -13,11 +13,11 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
rpm.am | 4 ++--
3 files changed, 4 insertions(+), 4 deletions(-)
-diff --git a/configure.ac b/configure.ac
-index 372875fc4..1b7add9ee 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -884,7 +884,7 @@ else
+Index: git/configure.ac
+===================================================================
+--- git.orig/configure.ac
++++ git/configure.ac
+@@ -942,7 +942,7 @@ else
usrprefix=$prefix
fi
@@ -26,10 +26,10 @@ index 372875fc4..1b7add9ee 100644
AC_SUBST(RPMCONFIGDIR)
AC_SUBST(OBJDUMP)
-diff --git a/macros.in b/macros.in
-index d53ab5ed5..9d10441c8 100644
---- a/macros.in
-+++ b/macros.in
+Index: git/macros.in
+===================================================================
+--- git.orig/macros.in
++++ git/macros.in
@@ -911,7 +911,7 @@ package or when debugging this package.\
%_sharedstatedir %{_prefix}/com
%_localstatedir %{_prefix}/var
@@ -39,10 +39,10 @@ index d53ab5ed5..9d10441c8 100644
%_includedir %{_prefix}/include
%_infodir %{_datadir}/info
%_mandir %{_datadir}/man
-diff --git a/rpm.am b/rpm.am
-index ebe4e40d1..e6920e258 100644
---- a/rpm.am
-+++ b/rpm.am
+Index: git/rpm.am
+===================================================================
+--- git.orig/rpm.am
++++ git/rpm.am
@@ -1,10 +1,10 @@
# Internal binaries
## HACK: It probably should be $(libexecdir)/rpm or $(libdir)/rpm
diff --git a/poky/meta/recipes-devtools/rpm/files/0001-Do-not-read-config-files-from-HOME.patch b/poky/meta/recipes-devtools/rpm/files/0001-Do-not-read-config-files-from-HOME.patch
index 96eb418952..fda64eefe0 100644
--- a/poky/meta/recipes-devtools/rpm/files/0001-Do-not-read-config-files-from-HOME.patch
+++ b/poky/meta/recipes-devtools/rpm/files/0001-Do-not-read-config-files-from-HOME.patch
@@ -9,10 +9,10 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
lib/rpmrc.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
-diff --git a/lib/rpmrc.c b/lib/rpmrc.c
-index 4ed991321..19fe80f98 100644
---- a/lib/rpmrc.c
-+++ b/lib/rpmrc.c
+Index: git/lib/rpmrc.c
+===================================================================
+--- git.orig/lib/rpmrc.c
++++ git/lib/rpmrc.c
@@ -458,8 +458,7 @@ static void setDefaults(void)
if (!defrcfiles) {
defrcfiles = rstrscat(NULL, confdir, "/rpmrc", ":",
@@ -33,6 +33,3 @@ index 4ed991321..19fe80f98 100644
}
#else
macrofiles = MACROFILES;
---
-2.11.0
-
diff --git a/poky/meta/recipes-devtools/rpm/files/0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch b/poky/meta/recipes-devtools/rpm/files/0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch
index 41cdf6ed77..ae24b663aa 100644
--- a/poky/meta/recipes-devtools/rpm/files/0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch
+++ b/poky/meta/recipes-devtools/rpm/files/0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch
@@ -13,11 +13,11 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
lib/rpmscript.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/lib/rpmscript.c b/lib/rpmscript.c
-index 6a31e0d..2b0e438 100644
---- a/lib/rpmscript.c
-+++ b/lib/rpmscript.c
-@@ -184,7 +184,7 @@ static void doScriptExec(ARGV_const_t argv, ARGV_const_t prefixes,
+Index: git/lib/rpmscript.c
+===================================================================
+--- git.orig/lib/rpmscript.c
++++ git/lib/rpmscript.c
+@@ -231,7 +231,7 @@ static void doScriptExec(ARGV_const_t ar
if (ipath && ipath[5] != '%')
path = ipath;
diff --git a/poky/meta/recipes-devtools/rpm/files/0001-When-cross-installing-execute-package-scriptlets-wit.patch b/poky/meta/recipes-devtools/rpm/files/0001-When-cross-installing-execute-package-scriptlets-wit.patch
index 2a0069cafe..bd3314a90f 100644
--- a/poky/meta/recipes-devtools/rpm/files/0001-When-cross-installing-execute-package-scriptlets-wit.patch
+++ b/poky/meta/recipes-devtools/rpm/files/0001-When-cross-installing-execute-package-scriptlets-wit.patch
@@ -28,9 +28,11 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
lib/rpmscript.c | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
---- a/lib/rpmscript.c
-+++ b/lib/rpmscript.c
-@@ -17,7 +17,7 @@
+Index: git/lib/rpmscript.c
+===================================================================
+--- git.orig/lib/rpmscript.c
++++ git/lib/rpmscript.c
+@@ -18,7 +18,7 @@
#include "rpmio/rpmio_internal.h"
#include "lib/rpmplugins.h" /* rpm plugins hooks */
@@ -39,7 +41,7 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
#include "debug.h"
struct scriptNextFileFunc_s {
-@@ -391,8 +391,7 @@ exit:
+@@ -427,8 +427,7 @@ exit:
Fclose(out); /* XXX dup'd STDOUT_FILENO */
if (fn) {
@@ -49,18 +51,18 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
free(fn);
}
free(mline);
-@@ -426,7 +425,13 @@ rpmRC rpmScriptRun(rpmScript script, int
+@@ -462,7 +461,13 @@ rpmRC rpmScriptRun(rpmScript script, int
if (rc != RPMRC_FAIL) {
if (script_type & RPMSCRIPTLET_EXEC) {
-- rc = runExtScript(plugins, prefixes, script->descr, lvl, scriptFd, &args, script->body, arg1, arg2, &script->nextFileFunc);
+- rc = runExtScript(plugins, prefixes, script->descr, lvl, scriptFd, &args, script->body, arg1, arg2, script->nextFileFunc);
+ if (getenv("RPM_NO_CHROOT_FOR_SCRIPTS") != NULL) {
+ rpmChrootOut();
-+ rc = runExtScript(plugins, prefixes, script->descr, lvl, scriptFd, &args, script->body, arg1, arg2, &script->nextFileFunc);
++ rc = runExtScript(plugins, prefixes, script->descr, lvl, scriptFd, &args, script->body, arg1, arg2, script->nextFileFunc);
+ rpmChrootIn();
+ } else {
-+ rc = runExtScript(plugins, prefixes, script->descr, lvl, scriptFd, &args, script->body, arg1, arg2, &script->nextFileFunc);
++ rc = runExtScript(plugins, prefixes, script->descr, lvl, scriptFd, &args, script->body, arg1, arg2, script->nextFileFunc);
+ }
} else {
- rc = runLuaScript(plugins, prefixes, script->descr, lvl, scriptFd, &args, script->body, arg1, arg2, &script->nextFileFunc);
+ rc = runLuaScript(plugins, prefixes, script->descr, lvl, scriptFd, &args, script->body, arg1, arg2, script->nextFileFunc);
}
diff --git a/poky/meta/recipes-devtools/rpm/files/0001-build-pack.c-do-not-insert-payloadflags-into-.rpm-me.patch b/poky/meta/recipes-devtools/rpm/files/0001-build-pack.c-do-not-insert-payloadflags-into-.rpm-me.patch
index 79b168257e..64433abb6a 100644
--- a/poky/meta/recipes-devtools/rpm/files/0001-build-pack.c-do-not-insert-payloadflags-into-.rpm-me.patch
+++ b/poky/meta/recipes-devtools/rpm/files/0001-build-pack.c-do-not-insert-payloadflags-into-.rpm-me.patch
@@ -13,10 +13,10 @@ Signed-off-by: Alexander Kanavin <alex@linutronix.de>
build/pack.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/build/pack.c b/build/pack.c
-index 932cb213e..b45d0726f 100644
---- a/build/pack.c
-+++ b/build/pack.c
+Index: git/build/pack.c
+===================================================================
+--- git.orig/build/pack.c
++++ git/build/pack.c
@@ -328,7 +328,7 @@ static char *getIOFlags(Package pkg)
headerPutString(pkg->header, RPMTAG_PAYLOADCOMPRESSOR, compr);
buf = xstrdup(rpmio_flags);
diff --git a/poky/meta/recipes-devtools/rpm/files/0001-configure.ac-add-linux-gnux32-variant-to-triplet-han.patch b/poky/meta/recipes-devtools/rpm/files/0001-configure.ac-add-linux-gnux32-variant-to-triplet-han.patch
index 2174a79e75..29b6686a94 100644
--- a/poky/meta/recipes-devtools/rpm/files/0001-configure.ac-add-linux-gnux32-variant-to-triplet-han.patch
+++ b/poky/meta/recipes-devtools/rpm/files/0001-configure.ac-add-linux-gnux32-variant-to-triplet-han.patch
@@ -11,13 +11,13 @@ Signed-off-by: Alexander Kanavin <alex@linutronix.de>
configure.ac | 4 ++++
1 file changed, 4 insertions(+)
-diff --git a/configure.ac b/configure.ac
-index 372875fc49..7d6a3d274e 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -845,6 +845,10 @@ if echo "$host_os" | grep '.*-gnuabi64$' > /dev/null ; then
- host_os=`echo "${host_os}" | sed 's/-gnuabi64$//'`
- host_os_gnu=-gnuabi64
+Index: git/configure.ac
+===================================================================
+--- git.orig/configure.ac
++++ git/configure.ac
+@@ -903,6 +903,10 @@ if echo "$host_os" | grep '.*-gnux32$' >
+ host_os=`echo "${host_os}" | sed 's/-gnux32$//'`
+ host_os_gnu=-gnux32
fi
+if echo "$host_os" | grep '.*-gnux32$' > /dev/null ; then
+ host_os=`echo "${host_os}" | sed 's/-gnux32$//'`
@@ -26,6 +26,3 @@ index 372875fc49..7d6a3d274e 100644
if echo "$host_os" | grep '.*-gnu$' > /dev/null ; then
host_os=`echo "${host_os}" | sed 's/-gnu$//'`
fi
---
-2.30.2
-
diff --git a/poky/meta/recipes-devtools/rpm/files/0001-docs-do-not-build-manpages-requires-pandoc.patch b/poky/meta/recipes-devtools/rpm/files/0001-docs-do-not-build-manpages-requires-pandoc.patch
index ced52d1007..d7137f1d10 100644
--- a/poky/meta/recipes-devtools/rpm/files/0001-docs-do-not-build-manpages-requires-pandoc.patch
+++ b/poky/meta/recipes-devtools/rpm/files/0001-docs-do-not-build-manpages-requires-pandoc.patch
@@ -9,10 +9,10 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
docs/Makefile.am | 2 --
1 file changed, 2 deletions(-)
-diff --git a/docs/Makefile.am b/docs/Makefile.am
-index 5a6bd203a..6257767fd 100644
---- a/docs/Makefile.am
-+++ b/docs/Makefile.am
+Index: git/docs/Makefile.am
+===================================================================
+--- git.orig/docs/Makefile.am
++++ git/docs/Makefile.am
@@ -1,7 +1,5 @@
## Process this file with automake to produce Makefile.in
@@ -21,6 +21,3 @@ index 5a6bd203a..6257767fd 100644
EXTRA_DIST =
EXTRA_DIST += \
---
-2.32.0
-
diff --git a/poky/meta/recipes-devtools/rpm/files/0001-lib-transaction.c-fix-file-conflicts-for-MIPS64-N32.patch b/poky/meta/recipes-devtools/rpm/files/0001-lib-transaction.c-fix-file-conflicts-for-MIPS64-N32.patch
index 6678c105cd..82e6567dc7 100644
--- a/poky/meta/recipes-devtools/rpm/files/0001-lib-transaction.c-fix-file-conflicts-for-MIPS64-N32.patch
+++ b/poky/meta/recipes-devtools/rpm/files/0001-lib-transaction.c-fix-file-conflicts-for-MIPS64-N32.patch
@@ -31,11 +31,11 @@ Signed-off-by: Changqing Li <changqing.li@windriver.com>
lib/transaction.c | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
-diff --git a/lib/transaction.c b/lib/transaction.c
-index 67b9db5..82386b8 100644
---- a/lib/transaction.c
-+++ b/lib/transaction.c
-@@ -391,7 +391,18 @@ static int handleColorConflict(rpmts ts,
+Index: git/lib/transaction.c
+===================================================================
+--- git.orig/lib/transaction.c
++++ git/lib/transaction.c
+@@ -402,7 +402,18 @@ static int handleColorConflict(rpmts ts,
rpmfsSetAction(ofs, ofx, FA_CREATE);
rpmfsSetAction(fs, fx, FA_SKIPCOLOR);
rConflicts = 0;
@@ -55,6 +55,3 @@ index 67b9db5..82386b8 100644
}
}
---
-2.7.4
-
diff --git a/poky/meta/recipes-devtools/rpm/files/0001-tools-Add-error.h-for-non-glibc-case.patch b/poky/meta/recipes-devtools/rpm/files/0001-tools-Add-error.h-for-non-glibc-case.patch
deleted file mode 100644
index 9783396639..0000000000
--- a/poky/meta/recipes-devtools/rpm/files/0001-tools-Add-error.h-for-non-glibc-case.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-From 9b9d717f484ec913cdd3804e43489b3dc18bd77c Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 31 Oct 2020 22:14:05 -0700
-Subject: [PATCH] tools: Add error.h for non-glibc case
-
-error is glibc specific API, so this patch will mostly not accepted
-upstream given that elfutils has been closely tied to glibc
-
-Upstream-Status: Inappropriate [workaround for musl]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
----
- tools/elfdeps.c | 6 +++++-
- tools/error.h | 27 +++++++++++++++++++++++++++
- 2 files changed, 32 insertions(+), 1 deletion(-)
- create mode 100644 tools/error.h
-
-diff --git a/tools/elfdeps.c b/tools/elfdeps.c
-index d205935bb..3a8945b33 100644
---- a/tools/elfdeps.c
-+++ b/tools/elfdeps.c
-@@ -5,10 +5,14 @@
- #include <unistd.h>
- #include <stdlib.h>
- #include <fcntl.h>
--#include <error.h>
- #include <errno.h>
- #include <popt.h>
- #include <gelf.h>
-+#ifdef __GLIBC__
-+#include <error.h>
-+#else
-+#include "error.h"
-+#endif
-
- #include <rpm/rpmstring.h>
- #include <rpm/argv.h>
-diff --git a/tools/error.h b/tools/error.h
-new file mode 100644
-index 000000000..ef06827a0
---- /dev/null
-+++ b/tools/error.h
-@@ -0,0 +1,27 @@
-+#ifndef _ERROR_H_
-+#define _ERROR_H_
-+
-+#include <stdarg.h>
-+#include <stdio.h>
-+#include <stdlib.h>
-+#include <string.h>
-+#include <errno.h>
-+
-+static unsigned int error_message_count = 0;
-+
-+static inline void error(int status, int errnum, const char* format, ...)
-+{
-+ va_list ap;
-+ fprintf(stderr, "%s: ", program_invocation_name);
-+ va_start(ap, format);
-+ vfprintf(stderr, format, ap);
-+ va_end(ap);
-+ if (errnum)
-+ fprintf(stderr, ": %s", strerror(errnum));
-+ fprintf(stderr, "\n");
-+ error_message_count++;
-+ if (status)
-+ exit(status);
-+}
-+
-+#endif /* _ERROR_H_ */
diff --git a/poky/meta/recipes-devtools/rpm/files/0002-Add-support-for-prefixing-etc-from-RPM_ETCCONFIGDIR-.patch b/poky/meta/recipes-devtools/rpm/files/0002-Add-support-for-prefixing-etc-from-RPM_ETCCONFIGDIR-.patch
index b3dbc319b6..2fe96a839c 100644
--- a/poky/meta/recipes-devtools/rpm/files/0002-Add-support-for-prefixing-etc-from-RPM_ETCCONFIGDIR-.patch
+++ b/poky/meta/recipes-devtools/rpm/files/0002-Add-support-for-prefixing-etc-from-RPM_ETCCONFIGDIR-.patch
@@ -13,11 +13,11 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
lib/rpmrc.c | 19 ++++++++++++++-----
1 file changed, 14 insertions(+), 5 deletions(-)
-diff --git a/lib/rpmrc.c b/lib/rpmrc.c
-index 19fe80f98..6b27b3941 100644
---- a/lib/rpmrc.c
-+++ b/lib/rpmrc.c
-@@ -455,10 +455,14 @@ const char * lookupInDefaultTable(const char * name,
+Index: git/lib/rpmrc.c
+===================================================================
+--- git.orig/lib/rpmrc.c
++++ git/lib/rpmrc.c
+@@ -455,10 +455,14 @@ const char * lookupInDefaultTable(const
static void setDefaults(void)
{
const char *confdir = rpmConfigDir();
@@ -46,7 +46,7 @@ index 19fe80f98..6b27b3941 100644
}
#else
macrofiles = MACROFILES;
-@@ -989,7 +993,11 @@ static void read_auxv(void)
+@@ -997,7 +1001,11 @@ static void read_auxv(void)
*/
static void defaultMachine(rpmrcCtx ctx, const char ** arch, const char ** os)
{
@@ -59,7 +59,7 @@ index 19fe80f98..6b27b3941 100644
static struct utsname un;
char * chptr;
canonEntry canon;
-@@ -1286,6 +1294,7 @@ static void defaultMachine(rpmrcCtx ctx, const char ** arch, const char ** os)
+@@ -1307,6 +1315,7 @@ static void defaultMachine(rpmrcCtx ctx,
if (arch) *arch = un.machine;
if (os) *os = un.sysname;
@@ -67,6 +67,3 @@ index 19fe80f98..6b27b3941 100644
}
static
---
-2.11.0
-
diff --git a/poky/meta/recipes-devtools/rpm/files/0016-rpmscript.c-change-logging-level-around-scriptlets-t.patch b/poky/meta/recipes-devtools/rpm/files/0016-rpmscript.c-change-logging-level-around-scriptlets-t.patch
index 43e9859ef3..9dbe7125de 100644
--- a/poky/meta/recipes-devtools/rpm/files/0016-rpmscript.c-change-logging-level-around-scriptlets-t.patch
+++ b/poky/meta/recipes-devtools/rpm/files/0016-rpmscript.c-change-logging-level-around-scriptlets-t.patch
@@ -13,11 +13,11 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
lib/rpmscript.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
-diff --git a/lib/rpmscript.c b/lib/rpmscript.c
-index 2b0e43862..e319673f1 100644
---- a/lib/rpmscript.c
-+++ b/lib/rpmscript.c
-@@ -226,7 +226,7 @@ static char * writeScript(const char *cmd, const char *script)
+Index: git/lib/rpmscript.c
+===================================================================
+--- git.orig/lib/rpmscript.c
++++ git/lib/rpmscript.c
+@@ -270,7 +270,7 @@ static char * writeScript(const char *cm
if (Ferror(fd))
goto exit;
@@ -26,7 +26,7 @@ index 2b0e43862..e319673f1 100644
static const char set_x[] = "set -x\n";
/* Assume failures will be caught by the write below */
Fwrite(set_x, sizeof(set_x[0]), sizeof(set_x)-1, fd);
-@@ -258,7 +258,7 @@ static rpmRC runExtScript(rpmPlugins plugins, ARGV_const_t prefixes,
+@@ -302,7 +302,7 @@ static rpmRC runExtScript(rpmPlugins plu
char *mline = NULL;
rpmRC rc = RPMRC_FAIL;
@@ -35,7 +35,7 @@ index 2b0e43862..e319673f1 100644
if (script) {
fn = writeScript(*argvp[0], script);
-@@ -310,7 +310,7 @@ static rpmRC runExtScript(rpmPlugins plugins, ARGV_const_t prefixes,
+@@ -354,7 +354,7 @@ static rpmRC runExtScript(rpmPlugins plu
sname, strerror(errno));
goto exit;
} else if (pid == 0) {/* Child */
@@ -44,7 +44,7 @@ index 2b0e43862..e319673f1 100644
sname, *argvp[0], (unsigned)getpid());
fclose(in);
-@@ -353,7 +353,7 @@ static rpmRC runExtScript(rpmPlugins plugins, ARGV_const_t prefixes,
+@@ -397,7 +397,7 @@ static rpmRC runExtScript(rpmPlugins plu
reaped = waitpid(pid, &status, 0);
} while (reaped == -1 && errno == EINTR);
diff --git a/poky/meta/recipes-devtools/rpm/files/fifofix.patch b/poky/meta/recipes-devtools/rpm/files/fifofix.patch
new file mode 100644
index 0000000000..71703d7f0c
--- /dev/null
+++ b/poky/meta/recipes-devtools/rpm/files/fifofix.patch
@@ -0,0 +1,22 @@
+Calling openat() on a fifo causes a pseudo hang for us (e.g. the fifo in psplash).
+Avoid calling openat for fifos.
+
+Introduced upstream with:
+
+https://github.com/rpm-software-management/rpm/commit/96ec957e281220f8e137a2d5eb23b83a6377d556
+
+Upstream-Status: Submitted [https://github.com/rpm-software-management/rpm/issues/2195]
+
+Index: git/lib/fsm.c
+===================================================================
+--- git.orig/lib/fsm.c
++++ git/lib/fsm.c
+@@ -1010,7 +1010,7 @@ int rpmPackageFilesInstall(rpmts ts, rpm
+ rc = RPMERR_UNKNOWN_FILETYPE;
+ }
+
+- if (!rc && fd == -1 && !S_ISLNK(fp->sb.st_mode)) {
++ if (!rc && fd == -1 && !S_ISLNK(fp->sb.st_mode) && !S_ISFIFO(fp->sb.st_mode)) {
+ /* Only follow safe symlinks, and never on temporary files */
+ fd = fsmOpenat(di.dirfd, fp->fpath,
+ fp->suffix ? AT_SYMLINK_NOFOLLOW : 0, 0);
diff --git a/poky/meta/recipes-devtools/rpm/rpm_4.17.1.bb b/poky/meta/recipes-devtools/rpm/rpm_4.18.0.bb
index 9b6446f265..5f3986d8a3 100644
--- a/poky/meta/recipes-devtools/rpm/rpm_4.17.1.bb
+++ b/poky/meta/recipes-devtools/rpm/rpm_4.18.0.bb
@@ -24,7 +24,7 @@ HOMEPAGE = "http://www.rpm.org"
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=c4eec0c20c6034b9407a09945b48a43f"
-SRC_URI = "git://github.com/rpm-software-management/rpm;branch=rpm-4.17.x;protocol=https \
+SRC_URI = "git://github.com/rpm-software-management/rpm;branch=rpm-4.18.x;protocol=https \
file://environment.d-rpm.sh \
file://0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch \
file://0001-Do-not-read-config-files-from-HOME.patch \
@@ -36,14 +36,14 @@ SRC_URI = "git://github.com/rpm-software-management/rpm;branch=rpm-4.17.x;protoc
file://0001-perl-disable-auto-reqs.patch \
file://0016-rpmscript.c-change-logging-level-around-scriptlets-t.patch \
file://0001-lib-transaction.c-fix-file-conflicts-for-MIPS64-N32.patch \
- file://0001-tools-Add-error.h-for-non-glibc-case.patch \
file://0001-docs-do-not-build-manpages-requires-pandoc.patch \
file://0001-build-pack.c-do-not-insert-payloadflags-into-.rpm-me.patch \
file://0001-configure.ac-add-linux-gnux32-variant-to-triplet-han.patch \
+ file://fifofix.patch \
"
PE = "1"
-SRCREV = "5bef402da334595ed9302b8bca1acdf5e88bfe11"
+SRCREV = "ea0d77c52e176e2876fdb1d07ad41e9e2635a93e"
S = "${WORKDIR}/git"
@@ -80,6 +80,7 @@ PACKAGECONFIG[imaevm] = "--with-imaevm,,ima-evm-utils"
PACKAGECONFIG[inhibit] = "--enable-inhibit-plugin,--disable-inhibit-plugin,dbus"
PACKAGECONFIG[rpm2archive] = "--with-archive,--without-archive,libarchive"
PACKAGECONFIG[sqlite] = "--enable-sqlite=yes,--enable-sqlite=no,sqlite3"
+PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline"
PACKAGECONFIG[ndb] = "--enable-ndb,--disable-ndb"
PACKAGECONFIG[bdb-ro] = "--enable-bdb-ro,--disable-bdb-ro"
PACKAGECONFIG[zstd] = "--enable-zstd=yes,--enable-zstd=no,zstd"
diff --git a/poky/meta/recipes-devtools/rust/files/target-rust-ccld.c b/poky/meta/recipes-devtools/rust/files/target-rust-ccld.c
new file mode 100644
index 0000000000..d3d491fb60
--- /dev/null
+++ b/poky/meta/recipes-devtools/rust/files/target-rust-ccld.c
@@ -0,0 +1,19 @@
+/*
+*
+* Copyright (C) 2022 Wind River Systems
+*
+* SPDX-License-Identifier: MIT
+*
+*/
+
+#include <string.h>
+#include <stdlib.h>
+#include <unistd.h>
+
+int main (int argc, char *argv[])
+{
+ unsetenv("LD_LIBRARY_PATH");
+ execvp("target-rust-ccld-wrapper", argv);
+
+ return 0;
+}
diff --git a/poky/meta/recipes-devtools/rust/rust-cross-canadian.inc b/poky/meta/recipes-devtools/rust/rust-cross-canadian.inc
index 7bf75a4712..17f933959f 100644
--- a/poky/meta/recipes-devtools/rust/rust-cross-canadian.inc
+++ b/poky/meta/recipes-devtools/rust/rust-cross-canadian.inc
@@ -7,13 +7,18 @@ LICENSE = "MIT"
MODIFYTOS = "0"
+DEPENDS += "virtual/${SDK_PREFIX}gcc-crosssdk virtual/nativesdk-libc virtual/nativesdk-${SDK_PREFIX}compilerlibs"
+
+SRC_URI += "file://target-rust-ccld.c"
+LIC_FILES_CHKSUM = "file://target-rust-ccld.c;md5=af4e0e29f81a34cffe05aa07c89e93e9;endline=7"
+S = "${WORKDIR}"
+
# Need to use our SDK's sh here, see #14878
create_sdk_wrapper () {
file="$1"
shift
-
cat <<- EOF > "${file}"
- #!${base_prefix}/bin/sh
+ #!/bin/sh
\$$1 \$@
EOF
@@ -32,8 +37,17 @@ do_install () {
install -m 0644 "${RUST_TARGETS_DIR}/${RUST_TARGET_SYS}.json" "${RUSTLIB_DIR}"
# Uses SDK's CC as linker so linked binaries works out of box.
+ # We have a problem as rust sets LD_LIBRARY_PATH and this will break running host
+ # binaries (even /bin/sh) in the SDK as they detect a newer glibc from the SDK
+ # in those paths and we hit symbol errors. We saw particular problems with symbol
+ # mismatch on ubuntu1804 during development. To avoid this we have an SDK built
+ # binary which unsets LD_LIBRARY_PATH, which can then call the wrapper script
+ # where the context is easier to do the env maniupations needed
install -d ${SYS_BINDIR}
- create_sdk_wrapper "${SYS_BINDIR}/target-rust-ccld" "CC"
+ outfile="${SYS_BINDIR}/target-rust-ccld"
+ ${CC} ${WORKDIR}/target-rust-ccld.c -o $outfile
+ chmod +x "$outfile"
+ create_sdk_wrapper "${SYS_BINDIR}/target-rust-ccld-wrapper" "CC"
ENV_SETUP_DIR=${D}${base_prefix}/environment-setup.d
mkdir "${ENV_SETUP_DIR}"
diff --git a/poky/meta/recipes-devtools/rust/rust.inc b/poky/meta/recipes-devtools/rust/rust.inc
index 284347dedc..956301023a 100644
--- a/poky/meta/recipes-devtools/rust/rust.inc
+++ b/poky/meta/recipes-devtools/rust/rust.inc
@@ -81,6 +81,7 @@ python do_configure() {
config.set(host_section, "cxx", e(d.expand("${RUST_TARGET_CXX}")))
config.set(host_section, "cc", e(d.expand("${RUST_TARGET_CC}")))
+ config.set(host_section, "linker", e(d.expand("${RUST_TARGET_CCLD}")))
if "musl" in host_section:
config.set(host_section, "musl-root", e(d.expand("${STAGING_DIR_HOST}${exec_prefix}")))
@@ -94,6 +95,7 @@ python do_configure() {
config.set(build_section, "cxx", e(d.expand("${RUST_BUILD_CXX}")))
config.set(build_section, "cc", e(d.expand("${RUST_BUILD_CC}")))
+ config.set(build_section, "linker", e(d.expand("${RUST_BUILD_CCLD}")))
target_section = "target.{}".format(d.getVar('RUST_TARGET_SYS', True))
if target_section != host_section and target_section != build_section:
@@ -103,10 +105,13 @@ python do_configure() {
config.set(target_section, "cxx", e(d.expand("${RUST_TARGET_CXX}")))
config.set(target_section, "cc", e(d.expand("${RUST_TARGET_CC}")))
+ config.set(target_section, "linker", e(d.expand("${RUST_TARGET_CCLD}")))
# [llvm]
config.add_section("llvm")
config.set("llvm", "static-libstdcpp", e(False))
+ if "llvm" in (d.getVar('TC_CXX_RUNTIME') or ""):
+ config.set("llvm", "use-libcxx", e(True))
# [rust]
config.add_section("rust")
@@ -116,6 +121,10 @@ python do_configure() {
# Whether or not to optimize the compiler and standard library
config.set("rust", "optimize", e(True))
+ # Emits extraneous output from tests to ensure that failures of the test
+ # harness are debuggable just from logfiles
+ config.set("rust", "verbose-tests", e(True))
+
# [build]
config.add_section("build")
config.set("build", "submodules", e(False))
diff --git a/poky/meta/recipes-devtools/rust/rust_1.63.0.bb b/poky/meta/recipes-devtools/rust/rust_1.63.0.bb
index 401d51041e..1f9dbd3cce 100644
--- a/poky/meta/recipes-devtools/rust/rust_1.63.0.bb
+++ b/poky/meta/recipes-devtools/rust/rust_1.63.0.bb
@@ -56,13 +56,15 @@ rust_do_install:class-nativesdk() {
rm ${D}${libdir}/rustlib/manifest*
}
+EXTRA_TOOLS ?= "cargo-clippy clippy-driver rustfmt"
+EXTRA_TOOLS:remove:riscv32 = "rustfmt"
rust_do_install:class-target() {
export PSEUDO_UNLOAD=1
rust_runx install
unset PSEUDO_UNLOAD
install -d ${D}${bindir}
- for i in cargo-clippy clippy-driver rustfmt; do
+ for i in ${EXTRA_TOOLS}; do
cp build/${RUST_BUILD_SYS}/stage2-tools/${RUST_HOST_SYS}/release/$i ${D}${bindir}
chrpath -r "\$ORIGIN/../lib" ${D}${bindir}/$i
done
diff --git a/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb b/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb
index 0a7e0f2a52..4e009d2625 100644
--- a/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb
+++ b/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb
@@ -18,7 +18,7 @@ S = "${WORKDIR}/git"
EXTRA_OEMAKE = "${PACKAGECONFIG_CONFARGS}"
-PACKAGECONFIG ??= "gzip xz lz4 lzma xattr zstd reproducible"
+PACKAGECONFIG ??= "gzip xz lzo lz4 lzma xattr zstd reproducible"
PACKAGECONFIG[gzip] = "GZIP_SUPPORT=1,GZIP_SUPPORT=0,zlib"
PACKAGECONFIG[xz] = "XZ_SUPPORT=1,XZ_SUPPORT=0,xz"
PACKAGECONFIG[lzo] = "LZO_SUPPORT=1,LZO_SUPPORT=0,lzo"
diff --git a/poky/meta/recipes-devtools/vala/vala_0.56.2.bb b/poky/meta/recipes-devtools/vala/vala_0.56.2.bb
deleted file mode 100644
index 08c8ccca1d..0000000000
--- a/poky/meta/recipes-devtools/vala/vala_0.56.2.bb
+++ /dev/null
@@ -1,3 +0,0 @@
-require ${BPN}.inc
-
-SRC_URI[sha256sum] = "66c9619bb17859fd1ac3aba0a57970613e38fd2a1ee30541174260c9fb90124c"
diff --git a/poky/meta/recipes-devtools/vala/vala_0.56.3.bb b/poky/meta/recipes-devtools/vala/vala_0.56.3.bb
new file mode 100644
index 0000000000..83f61e5b2f
--- /dev/null
+++ b/poky/meta/recipes-devtools/vala/vala_0.56.3.bb
@@ -0,0 +1,3 @@
+require ${BPN}.inc
+
+SRC_URI[sha256sum] = "e1066221bf7b89cb1fa7327a3888645cb33b604de3bf45aa81132fd040b699bf"
diff --git a/poky/meta/recipes-devtools/xmlto/xmlto/0001-Skip-validating-xmlto-output.patch b/poky/meta/recipes-devtools/xmlto/xmlto/0001-Skip-validating-xmlto-output.patch
deleted file mode 100644
index c6857a9da5..0000000000
--- a/poky/meta/recipes-devtools/xmlto/xmlto/0001-Skip-validating-xmlto-output.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 3deb7a0eded04ab08a9cb2d88526cb1c7b440061 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sun, 14 Aug 2022 00:23:29 -0700
-Subject: [PATCH] Skip validating xmlto output
-
-Avoids network access
-
-Upstream-Status: Submitted [https://pagure.io/xmlto/pull-request/11]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- Makefile.am | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index 50fa279..6a2da62 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -68,7 +68,7 @@ EXTRA_DIST = xmlto.spec \
- doc/xmlif.xml \
- xmlto.mak
-
--GEN_MANPAGE = FORMAT_DIR=$(top_srcdir)/format $(BASH) ./xmlto -o $(@D) man $<
-+GEN_MANPAGE = FORMAT_DIR=$(top_srcdir)/format $(BASH) ./xmlto --skip-validation -o $(@D) man $<
- man/man1/xmlto.1: doc/xmlto.xml ; $(GEN_MANPAGE)
- man/man1/xmlif.1: doc/xmlif.xml ; $(GEN_MANPAGE)
-
---
-2.37.2
-
diff --git a/poky/meta/recipes-devtools/xmlto/xmlto/configure.in-drop-the-test-of-xmllint-and-xsltproc.patch b/poky/meta/recipes-devtools/xmlto/xmlto/configure.in-drop-the-test-of-xmllint-and-xsltproc.patch
deleted file mode 100644
index 7cc3cbe0fb..0000000000
--- a/poky/meta/recipes-devtools/xmlto/xmlto/configure.in-drop-the-test-of-xmllint-and-xsltproc.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-configure.in: drop the test of xmllint and xsltproc
-
-The test is unnecessary, the xmllint and xsltproc were explicitly
-added to RDEPENDS.
-
-Upstream-Status: Inappropriate
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- configure.in | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
---- a/configure.ac
-+++ b/configure.ac
-@@ -42,10 +42,10 @@ AC_ARG_VAR([LOCALE], [Name and path of the `locale' program.])
- AC_PATH_PROG([LOCALE], [locale], [locale])
-
- AC_ARG_VAR([XMLLINT], [Name and path of the `xmllint' program.])
--AC_PATH_PROG([XMLLINT], [xmllint], [xmllint])
-+dnl AC_PATH_PROG([XMLLINT], [xmllint], [xmllint])
-
- AC_ARG_VAR([XSLTPROC], [Name and path of the `xsltproc' program.])
--AC_PATH_PROG([XSLTPROC], [xsltproc], [xsltproc])
-+dnl AC_PATH_PROG([XSLTPROC], [xsltproc], [xsltproc])
-
- dnl
- dnl toolchains
---
-1.8.1.2
-
diff --git a/poky/meta/recipes-devtools/xmlto/xmlto_0.0.28.bb b/poky/meta/recipes-devtools/xmlto/xmlto_0.0.28.bb
index 373eca2454..5e3fac7a60 100644
--- a/poky/meta/recipes-devtools/xmlto/xmlto_0.0.28.bb
+++ b/poky/meta/recipes-devtools/xmlto/xmlto_0.0.28.bb
@@ -8,10 +8,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
SRCREV = "6fa6a0e07644f20abf2596f78a60112713e11cbe"
UPSTREAM_CHECK_COMMITS = "1"
-SRC_URI = "git://pagure.io/xmlto.git;protocol=https;branch=master \
- file://configure.in-drop-the-test-of-xmllint-and-xsltproc.patch \
- file://0001-Skip-validating-xmlto-output.patch \
-"
+SRC_URI = "git://pagure.io/xmlto.git;protocol=https;branch=master"
S = "${WORKDIR}/git"
PV .= "+0.0.29+git${SRCPV}"
@@ -34,11 +31,11 @@ RDEPENDS:${PN}:append:class-target = " \
libxslt-bin \
coreutils \
"
-CACHED_CONFIGUREVARS += "ac_cv_path_TAIL=tail ac_cv_path_GREP=grep"
+CACHED_CONFIGUREVARS += "ac_cv_path_TAIL=tail ac_cv_path_GREP=grep ac_cv_path_XMLLINT=xmllint ac_cv_path_XSLTPROC=xsltproc"
BBCLASSEXTEND = "native"
-EXTRA_OECONF:append = " BASH=/bin/bash GCP=/bin/cp XMLLINT=xmllint XSLTPROC=xsltproc"
+EXTRA_OECONF:append = " BASH=/bin/bash GCP=/bin/cp"
do_configure:prepend() {
(cd ${S} && flex -o xmlif/xmlif.c xmlif/xmlif.l)
diff --git a/poky/meta/recipes-extended/cracklib/cracklib/0001-rules-Drop-using-register-keyword.patch b/poky/meta/recipes-extended/cracklib/cracklib/0001-rules-Drop-using-register-keyword.patch
deleted file mode 100644
index a8446653eb..0000000000
--- a/poky/meta/recipes-extended/cracklib/cracklib/0001-rules-Drop-using-register-keyword.patch
+++ /dev/null
@@ -1,278 +0,0 @@
-From fe49471cfa7fe0618615c065f4c0ad04e888bf92 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sun, 7 Aug 2022 12:24:39 -0700
-Subject: [PATCH 1/2] rules: Drop using register keyword
-
-This is a deprecated keyword
-
-Upstream-Status: Submitted [https://github.com/cracklib/cracklib/pull/48]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/lib/rules.c | 94 ++++++++++++++++++++++++-------------------------
- 1 file changed, 47 insertions(+), 47 deletions(-)
-
-diff --git a/lib/rules.c b/lib/rules.c
-index 3a2aa46..6e7a12a 100644
---- a/lib/rules.c
-+++ b/lib/rules.c
-@@ -67,8 +67,8 @@ Suffix(myword, suffix)
- char *myword;
- char *suffix;
- {
-- register int i;
-- register int j;
-+ int i;
-+ int j;
- i = strlen(myword);
- j = strlen(suffix);
-
-@@ -83,10 +83,10 @@ Suffix(myword, suffix)
-
- char *
- Reverse(str) /* return a pointer to a reversal */
-- register char *str;
-+ char *str;
- {
-- register int i;
-- register int j;
-+ int i;
-+ int j;
- static char area[STRINGSIZE];
- j = i = strlen(str);
- while (*str)
-@@ -99,9 +99,9 @@ Reverse(str) /* return a pointer to a reversal */
-
- char *
- Uppercase(str) /* return a pointer to an uppercase */
-- register char *str;
-+ char *str;
- {
-- register char *ptr;
-+ char *ptr;
- static char area[STRINGSIZE];
- ptr = area;
- while (*str)
-@@ -116,9 +116,9 @@ Uppercase(str) /* return a pointer to an uppercase */
-
- char *
- Lowercase(str) /* return a pointer to an lowercase */
-- register char *str;
-+ char *str;
- {
-- register char *ptr;
-+ char *ptr;
- static char area[STRINGSIZE];
- ptr = area;
- while (*str)
-@@ -133,9 +133,9 @@ Lowercase(str) /* return a pointer to an lowercase */
-
- char *
- Capitalise(str) /* return a pointer to an capitalised */
-- register char *str;
-+ char *str;
- {
-- register char *ptr;
-+ char *ptr;
- static char area[STRINGSIZE];
- ptr = area;
-
-@@ -152,9 +152,9 @@ Capitalise(str) /* return a pointer to an capitalised */
-
- char *
- Pluralise(string) /* returns a pointer to a plural */
-- register char *string;
-+ char *string;
- {
-- register int length;
-+ int length;
- static char area[STRINGSIZE];
- length = strlen(string);
- strcpy(area, string);
-@@ -193,11 +193,11 @@ Pluralise(string) /* returns a pointer to a plural */
-
- char *
- Substitute(string, old, new) /* returns pointer to a swapped about copy */
-- register char *string;
-- register char old;
-- register char new;
-+ char *string;
-+ char old;
-+ char new;
- {
-- register char *ptr;
-+ char *ptr;
- static char area[STRINGSIZE];
- ptr = area;
- while (*string)
-@@ -211,11 +211,11 @@ Substitute(string, old, new) /* returns pointer to a swapped about copy */
-
- char *
- Purge(string, target) /* returns pointer to a purged copy */
-- register char *string;
-- register char target;
-+ char *string;
-+ char target;
- {
-- register char *ptr;
-- static char area[STRINGSIZE];
-+ char *ptr;
-+ char area[STRINGSIZE];
- ptr = area;
- while (*string)
- {
-@@ -238,11 +238,11 @@ Purge(string, target) /* returns pointer to a purged copy */
-
- int
- MatchClass(class, input)
-- register char class;
-- register char input;
-+ char class;
-+ char input;
- {
-- register char c;
-- register int retval;
-+ char c;
-+ int retval;
- retval = 0;
-
- switch (class)
-@@ -357,8 +357,8 @@ MatchClass(class, input)
-
- char *
- PolyStrchr(string, class)
-- register char *string;
-- register char class;
-+ char *string;
-+ char class;
- {
- while (*string)
- {
-@@ -373,11 +373,11 @@ PolyStrchr(string, class)
-
- char *
- PolySubst(string, class, new) /* returns pointer to a swapped about copy */
-- register char *string;
-- register char class;
-- register char new;
-+ char *string;
-+ char class;
-+ char new;
- {
-- register char *ptr;
-+ char *ptr;
- static char area[STRINGSIZE];
- ptr = area;
- while (*string)
-@@ -391,10 +391,10 @@ PolySubst(string, class, new) /* returns pointer to a swapped about copy */
-
- char *
- PolyPurge(string, class) /* returns pointer to a purged copy */
-- register char *string;
-- register char class;
-+ char *string;
-+ char class;
- {
-- register char *ptr;
-+ char *ptr;
- static char area[STRINGSIZE];
- ptr = area;
- while (*string)
-@@ -433,7 +433,7 @@ Mangle(input, control) /* returns a pointer to a controlled Mangle */
- char *control;
- {
- int limit;
-- register char *ptr;
-+ char *ptr;
- static char area[STRINGSIZE * 2] = {0};
- char area2[STRINGSIZE * 2] = {0};
- strcpy(area, input);
-@@ -523,7 +523,7 @@ Mangle(input, control) /* returns a pointer to a controlled Mangle */
- return NULL;
- } else
- {
-- register char *string;
-+ char *string;
- string = area;
- while (*(string++));
- string[-1] = *(++ptr);
-@@ -537,7 +537,7 @@ Mangle(input, control) /* returns a pointer to a controlled Mangle */
- return NULL;
- } else
- {
-- register int i;
-+ int i;
- int start;
- int length;
- start = Char2Int(*(++ptr));
-@@ -563,7 +563,7 @@ Mangle(input, control) /* returns a pointer to a controlled Mangle */
- return NULL;
- } else
- {
-- register int i;
-+ int i;
- i = Char2Int(*(++ptr));
- if (i < 0)
- {
-@@ -587,9 +587,9 @@ Mangle(input, control) /* returns a pointer to a controlled Mangle */
- return NULL;
- } else
- {
-- register int i;
-- register char *p1;
-- register char *p2;
-+ int i;
-+ char *p1;
-+ char *p2;
- i = Char2Int(*(++ptr));
- if (i < 0)
- {
-@@ -696,7 +696,7 @@ Mangle(input, control) /* returns a pointer to a controlled Mangle */
- return NULL;
- } else
- {
-- register int i;
-+ int i;
- if ((i = Char2Int(ptr[1])) < 0)
- {
- Debug(1, "Mangle: '=' weird argument in '%s'\n", control);
-@@ -723,7 +723,7 @@ Mangle(input, control) /* returns a pointer to a controlled Mangle */
- case RULE_DFIRST:
- if (area[0])
- {
-- register int i;
-+ int i;
- for (i = 1; area[i]; i++)
- {
- area[i - 1] = area[i];
-@@ -735,7 +735,7 @@ Mangle(input, control) /* returns a pointer to a controlled Mangle */
- case RULE_DLAST:
- if (area[0])
- {
-- register int i;
-+ int i;
- for (i = 1; area[i]; i++);
- area[i - 1] = '\0';
- }
-@@ -771,7 +771,7 @@ Mangle(input, control) /* returns a pointer to a controlled Mangle */
- return NULL;
- } else
- {
-- register int i;
-+ int i;
-
- for (i = 0; area[i]; i++);
-
-@@ -815,8 +815,8 @@ Mangle(input, control) /* returns a pointer to a controlled Mangle */
-
- int
- PMatch(control, string)
--register char *control;
--register char *string;
-+char *control;
-+char *string;
- {
- while (*string && *control)
- {
---
-2.37.1
-
diff --git a/poky/meta/recipes-extended/cracklib/cracklib/0002-rules-Correct-parameter-types-to-Debug-calls.patch b/poky/meta/recipes-extended/cracklib/cracklib/0002-rules-Correct-parameter-types-to-Debug-calls.patch
deleted file mode 100644
index a8692b0cca..0000000000
--- a/poky/meta/recipes-extended/cracklib/cracklib/0002-rules-Correct-parameter-types-to-Debug-calls.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 793921a8ee4ae7f20e1fd2bbec5196bc83176b01 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sun, 7 Aug 2022 12:25:24 -0700
-Subject: [PATCH 2/2] rules: Correct parameter types to Debug() calls
-
-Fixes
-src/lib/rules.c:346:45: error: incompatible integer to pointer conversion passing 'char' to parameter of type 'char *'; take the address with & [-Wint-conversion]
-src/lib/rules.c:804:53: error: incompatible integer to pointer conversion passing 'char' to parameter of type 'char *'; remove * [-Wint-conversion] Debug(1, "Mangle: unknown command %c in %s\n", *ptr, control);
- ^~~~
-Upstream-Status: Submitted [https://github.com/cracklib/cracklib/pull/48]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/lib/rules.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/lib/rules.c b/lib/rules.c
-index 6e7a12a..4a34f91 100644
---- a/lib/rules.c
-+++ b/lib/rules.c
-@@ -343,7 +343,7 @@ MatchClass(class, input)
- break;
-
- default:
-- Debug(1, "MatchClass: unknown class %c\n", class);
-+ Debug(1, "MatchClass: unknown class %c\n", &class);
- return (0);
- break;
- }
-@@ -801,7 +801,7 @@ Mangle(input, control) /* returns a pointer to a controlled Mangle */
- }
-
- default:
-- Debug(1, "Mangle: unknown command %c in %s\n", *ptr, control);
-+ Debug(1, "Mangle: unknown command %c in %s\n", ptr, control);
- return NULL;
- break;
- }
---
-2.37.1
-
diff --git a/poky/meta/recipes-extended/cracklib/cracklib_2.9.7.bb b/poky/meta/recipes-extended/cracklib/cracklib_2.9.8.bb
index ffed88ed01..786940a7e0 100644
--- a/poky/meta/recipes-extended/cracklib/cracklib_2.9.7.bb
+++ b/poky/meta/recipes-extended/cracklib/cracklib_2.9.8.bb
@@ -12,11 +12,9 @@ EXTRA_OECONF = "--without-python --libdir=${base_libdir}"
SRC_URI = "git://github.com/cracklib/cracklib;protocol=https;branch=master \
file://0001-packlib.c-support-dictionary-byte-order-dependent.patch \
file://0002-craklib-fix-testnum-and-teststr-failed.patch \
- file://0001-rules-Drop-using-register-keyword.patch \
- file://0002-rules-Correct-parameter-types-to-Debug-calls.patch \
"
-SRCREV = "f83934cf3cced0c9600c7d81332f4169f122a2cf"
+SRCREV = "d9e8f9f47718539aeba80f90f4e072549926dc9c"
S = "${WORKDIR}/git/src"
inherit autotools gettext
diff --git a/poky/meta/recipes-extended/cronie/cronie_1.6.1.bb b/poky/meta/recipes-extended/cronie/cronie_1.6.1.bb
index 6d150dd3c7..078187534e 100644
--- a/poky/meta/recipes-extended/cronie/cronie_1.6.1.bb
+++ b/poky/meta/recipes-extended/cronie/cronie_1.6.1.bb
@@ -14,9 +14,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=dd2a592170760e1386c769e1043b3722 \
SECTION = "utils"
-UPSTREAM_CHECK_URI = "https://github.com/cronie-crond/${BPN}/releases/"
+GITHUB_BASE_URI = "https://github.com/cronie-crond/${BPN}/releases/"
-SRC_URI = "https://github.com/cronie-crond/cronie/releases/download/cronie-${PV}/cronie-${PV}.tar.gz \
+SRC_URI = "${GITHUB_BASE_URI}/download/cronie-${PV}/cronie-${PV}.tar.gz \
file://crond.init \
file://crontab \
file://crond.service \
@@ -27,7 +27,8 @@ PAM_DEPS = "libpam libpam-runtime pam-plugin-access pam-plugin-loginuid"
SRC_URI[sha256sum] = "2cd0f0dd1680e6b9c39bf1e3a5e7ad6df76aa940de1ee90a453633aa59984e62"
-inherit autotools update-rc.d useradd systemd
+inherit autotools update-rc.d useradd systemd github-releases
+UPSTREAM_CHECK_REGEX = "releases/tag/cronie-(?P<pver>\d+(\.\d+)+)"
PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}"
diff --git a/poky/meta/recipes-extended/cups/cups.inc b/poky/meta/recipes-extended/cups/cups.inc
index 4592980766..9c920bb133 100644
--- a/poky/meta/recipes-extended/cups/cups.inc
+++ b/poky/meta/recipes-extended/cups/cups.inc
@@ -8,7 +8,7 @@ SECTION = "console/utils"
LICENSE = "Apache-2.0"
DEPENDS = "libpng jpeg dbus zlib libusb1"
-SRC_URI = "https://github.com/OpenPrinting/cups/releases/download/v${PV}/cups-${PV}-source.tar.gz \
+SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/cups-${PV}-source.tar.gz \
file://0001-use-echo-only-in-init.patch \
file://0002-don-t-try-to-run-generated-binaries.patch \
file://libexecdir.patch \
@@ -17,8 +17,7 @@ SRC_URI = "https://github.com/OpenPrinting/cups/releases/download/v${PV}/cups-${
file://cups-volatiles.conf \
"
-UPSTREAM_CHECK_URI = "https://github.com/OpenPrinting/cups/releases"
-UPSTREAM_CHECK_REGEX = "cups-(?P<pver>(?!.+\d(b|rc)\d.+).+)-source.tar"
+GITHUB_BASE_URI = "https://github.com/OpenPrinting/cups/releases"
# Issue only applies to MacOS
CVE_CHECK_IGNORE += "CVE-2008-1033"
@@ -33,7 +32,7 @@ LEAD_SONAME = "libcupsdriver.so"
CLEANBROKEN = "1"
-inherit autotools-brokensep binconfig useradd systemd pkgconfig multilib_script
+inherit autotools-brokensep binconfig useradd systemd pkgconfig multilib_script github-releases
USERADD_PACKAGES = "${PN}"
GROUPADD_PARAM:${PN} = "--system lpadmin"
diff --git a/poky/meta/recipes-extended/less/less_600.bb b/poky/meta/recipes-extended/less/less_608.bb
index f51083e1de..f411a8fb53 100644
--- a/poky/meta/recipes-extended/less/less_600.bb
+++ b/poky/meta/recipes-extended/less/less_608.bb
@@ -28,10 +28,9 @@ DEPENDS = "ncurses"
SRC_URI = "http://www.greenwoodsoftware.com/${BPN}/${BPN}-${PV}.tar.gz \
"
-SRC_URI[sha256sum] = "6633d6aa2b3cc717afb2c205778c7c42c4620f63b1d682f3d12c98af0be74d20"
+SRC_URI[sha256sum] = "a69abe2e0a126777e021d3b73aa3222e1b261f10e64624d41ec079685a6ac209"
UPSTREAM_CHECK_URI = "http://www.greenwoodsoftware.com/less/download.html"
-UPSTREAM_VERSION_UNKNOWN = "1"
inherit autotools update-alternatives
diff --git a/poky/meta/recipes-extended/logrotate/logrotate_3.20.1.bb b/poky/meta/recipes-extended/logrotate/logrotate_3.20.1.bb
index 35977535aa..034c37b429 100644
--- a/poky/meta/recipes-extended/logrotate/logrotate_3.20.1.bb
+++ b/poky/meta/recipes-extended/logrotate/logrotate_3.20.1.bb
@@ -10,10 +10,7 @@ DEPENDS="coreutils popt"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-UPSTREAM_CHECK_URI = "https://github.com/${BPN}/${BPN}/releases"
-UPSTREAM_CHECK_REGEX = "logrotate-(?P<pver>\d+(\.\d+)+).tar"
-
-SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/${PV}/${BP}.tar.xz"
+SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/${BP}.tar.xz"
SRC_URI[sha256sum] = "742f6d6e18eceffa49a4bacd933686d3e42931cfccfb694d7f6369b704e5d094"
@@ -47,7 +44,7 @@ EXTRA_OEMAKE = "\
# INSTALL=install and BASEDIR=/usr.
OS_NAME = "Linux"
-inherit autotools systemd
+inherit autotools systemd github-releases
SYSTEMD_SERVICE:${PN} = "\
${BPN}.service \
diff --git a/poky/meta/recipes-extended/ltp/ltp_20220527.bb b/poky/meta/recipes-extended/ltp/ltp_20220527.bb
index 00ff906ded..b657a6adb1 100644
--- a/poky/meta/recipes-extended/ltp/ltp_20220527.bb
+++ b/poky/meta/recipes-extended/ltp/ltp_20220527.bb
@@ -150,13 +150,11 @@ remove_broken_musl_sources() {
# sync with upstream
# https://github.com/linux-test-project/ltp/blob/master/ci/alpine.sh#L33
rm -rfv \
- testcases/kernel/syscalls/confstr/confstr01.c \
testcases/kernel/syscalls/fmtmsg/fmtmsg01.c \
testcases/kernel/syscalls/getcontext/getcontext01.c \
testcases/kernel/syscalls/rt_tgsigqueueinfo/rt_tgsigqueueinfo01.c \
testcases/kernel/syscalls/timer_create/timer_create01.c \
- testcases/kernel/syscalls/timer_create/timer_create03.c \
- utils/benchmark/ebizzy-0.3
+ testcases/kernel/syscalls/timer_create/timer_create03.c
}
do_patch[postfuncs] += "remove_broken_musl_sources"
diff --git a/poky/meta/recipes-extended/pam/libpam_1.3.1.bb b/poky/meta/recipes-extended/pam/libpam_1.3.1.bb
index 9a7cfec166..bede4412d9 100644
--- a/poky/meta/recipes-extended/pam/libpam_1.3.1.bb
+++ b/poky/meta/recipes-extended/pam/libpam_1.3.1.bb
@@ -12,7 +12,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=7eb5c1bf854e8881005d673599ee74d3 \
file://libpamc/License;md5=a4da476a14c093fdc73be3c3c9ba8fb3 \
"
-SRC_URI = "https://github.com/linux-pam/linux-pam/releases/download/v${PV}/Linux-PAM-${PV}.tar.xz \
+SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/Linux-PAM-${PV}.tar.xz \
file://99_pam \
file://pam.d/common-account \
file://pam.d/common-auth \
@@ -42,7 +42,7 @@ CFLAGS:append = " -fPIC "
S = "${WORKDIR}/Linux-PAM-${PV}"
-inherit autotools gettext pkgconfig
+inherit autotools gettext pkgconfig systemd ptest github-releases
PACKAGECONFIG ??= ""
PACKAGECONFIG[audit] = "--enable-audit,--disable-audit,audit,"
@@ -191,6 +191,6 @@ CONFFILES:${PN}-runtime += "${sysconfdir}/pam.d/common-session-noninteractive"
CONFFILES:${PN}-runtime += "${sysconfdir}/pam.d/common-account"
CONFFILES:${PN}-runtime += "${sysconfdir}/security/limits.conf"
-UPSTREAM_CHECK_URI = "https://github.com/linux-pam/linux-pam/releases"
+GITHUB_BASE_URI = "https://github.com/linux-pam/linux-pam/releases"
CVE_PRODUCT = "linux-pam"
diff --git a/poky/meta/recipes-example/rust-hello-world/rust-hello-world/0001-enable-LTO.patch b/poky/meta/recipes-extended/rust-example/rust-hello-world/0001-enable-LTO.patch
index f319545ee1..f319545ee1 100644
--- a/poky/meta/recipes-example/rust-hello-world/rust-hello-world/0001-enable-LTO.patch
+++ b/poky/meta/recipes-extended/rust-example/rust-hello-world/0001-enable-LTO.patch
diff --git a/poky/meta/recipes-example/rust-hello-world/rust-hello-world_git.bb b/poky/meta/recipes-extended/rust-example/rust-hello-world_git.bb
index 1d91109b51..1d91109b51 100644
--- a/poky/meta/recipes-example/rust-hello-world/rust-hello-world_git.bb
+++ b/poky/meta/recipes-extended/rust-example/rust-hello-world_git.bb
diff --git a/poky/meta/recipes-extended/shadow/files/securetty b/poky/meta/recipes-extended/shadow/files/securetty
index 2be341a216..820728faa6 100644
--- a/poky/meta/recipes-extended/shadow/files/securetty
+++ b/poky/meta/recipes-extended/shadow/files/securetty
@@ -7,6 +7,7 @@ ttyS0
ttyS1
ttyS2
ttyS3
+ttyS4
# ARM AMBA SoCs
ttyAM0
diff --git a/poky/meta/recipes-extended/shadow/shadow.inc b/poky/meta/recipes-extended/shadow/shadow.inc
index 414bf467ba..a87e23569b 100644
--- a/poky/meta/recipes-extended/shadow/shadow.inc
+++ b/poky/meta/recipes-extended/shadow/shadow.inc
@@ -10,8 +10,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=c9a450b7be84eac23e6353efecb60b5b \
DEPENDS = "virtual/crypt"
-UPSTREAM_CHECK_URI = "https://github.com/shadow-maint/shadow/releases"
-SRC_URI = "https://github.com/shadow-maint/shadow/releases/download/${PV}/${BP}.tar.gz \
+GITHUB_BASE_URI = "https://github.com/shadow-maint/shadow/releases"
+SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/${BP}.tar.gz \
file://0001-shadow-use-relaxed-usernames.patch \
${@bb.utils.contains('PACKAGECONFIG', 'pam', '${PAM_SRC_URI}', '', d)} \
file://useradd \
@@ -42,7 +42,7 @@ PAM_SRC_URI = "file://pam.d/chfn \
file://pam.d/passwd \
file://pam.d/su"
-inherit autotools gettext
+inherit autotools gettext github-releases
export CONFIG_SHELL="/bin/sh"
diff --git a/poky/meta/recipes-extended/timezone/timezone.inc b/poky/meta/recipes-extended/timezone/timezone.inc
index 2b956cf7c0..d3c78e9157 100644
--- a/poky/meta/recipes-extended/timezone/timezone.inc
+++ b/poky/meta/recipes-extended/timezone/timezone.inc
@@ -6,7 +6,7 @@ SECTION = "base"
LICENSE = "PD & BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=c679c9d6b02bc2757b3eaf8f53c43fba"
-PV = "2022b"
+PV = "2022d"
SRC_URI =" http://www.iana.org/time-zones/repository/releases/tzcode${PV}.tar.gz;name=tzcode \
http://www.iana.org/time-zones/repository/releases/tzdata${PV}.tar.gz;name=tzdata \
@@ -14,6 +14,6 @@ SRC_URI =" http://www.iana.org/time-zones/repository/releases/tzcode${PV}.tar.gz
UPSTREAM_CHECK_URI = "http://www.iana.org/time-zones"
-SRC_URI[tzcode.sha256sum] = "bab20d943e59a3218435f48d868a4e552f18d6d7f3dd128660c5660c80b8a05f"
-SRC_URI[tzdata.sha256sum] = "f590eaf04a395245426c2be4fae71c143aea5cebc11088b7a0a5704461df397d"
+SRC_URI[tzcode.sha256sum] = "d644ba0f938899374ea8cb554e35fb4afa0f7bd7b716c61777cd00500b8759e0"
+SRC_URI[tzdata.sha256sum] = "6ecdbee27fa43dcfa49f3d4fd8bb1dfef54c90da1abcd82c9abcf2dc4f321de0"
diff --git a/poky/meta/recipes-extended/watchdog/watchdog_5.16.bb b/poky/meta/recipes-extended/watchdog/watchdog_5.16.bb
index 26fcc10487..6031dcaa16 100644
--- a/poky/meta/recipes-extended/watchdog/watchdog_5.16.bb
+++ b/poky/meta/recipes-extended/watchdog/watchdog_5.16.bb
@@ -28,10 +28,6 @@ UPSTREAM_CHECK_REGEX = "/watchdog/(?P<pver>(\d+[\.\-_]*)+)/"
inherit autotools update-rc.d systemd pkgconfig
-DEPENDS += "libtirpc"
-CFLAGS += "-I${STAGING_INCDIR}/tirpc"
-LDFLAGS += "-ltirpc"
-
EXTRA_OECONF += " --disable-nfs "
CACHED_CONFIGUREVARS += "ac_cv_path_PATH_SENDMAIL=${sbindir}/sendmail"
diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.72.0.bb b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.72.0.bb
index 9a47e908b7..d935cbd905 100644
--- a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.72.0.bb
+++ b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.72.0.bb
@@ -103,7 +103,7 @@ EOF
# for a different architecture
cat > ${B}/g-ir-scanner-lddwrapper << EOF
#!/bin/sh
-$OBJDUMP -p "\$@"
+\$OBJDUMP -p "\$@"
EOF
chmod +x ${B}/g-ir-scanner-lddwrapper
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 67081bb8cb..ffb813d290 100644
--- a/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb
+++ b/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb
@@ -17,9 +17,13 @@ LICENSE:${PN}-doc = "MPL-1.1 | LGPL-2.1-only"
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"
+# Adapt the licenses for cairo-dbg and cairo-src depending on whether
+# cairo-trace is being built.
+LICENSE:${PN}-dbg = "(MPL-1.1 | LGPL-2.1-only)${@bb.utils.contains('PACKAGECONFIG', 'trace', ' & GPL-3.0-or-later', '', d)}"
+LICENSE:${PN}-src = "(MPL-1.1 | LGPL-2.1-only)${@bb.utils.contains('PACKAGECONFIG', 'trace', ' & GPL-3.0-or-later', '', d)}"
LIC_FILES_CHKSUM = "file://COPYING;md5=e73e999e0c72b5ac9012424fa157ad77 \
- file://util/cairo-trace/COPYING-GPL-3;md5=d32239bcb673463ab874e80d47fae504"
+ ${@bb.utils.contains('PACKAGECONFIG', 'trace', 'file://util/cairo-trace/COPYING-GPL-3;md5=d32239bcb673463ab874e80d47fae504', '', d)}"
DEPENDS = "fontconfig glib-2.0 libpng pixman zlib"
diff --git a/poky/meta/recipes-graphics/drm/libdrm_2.4.112.bb b/poky/meta/recipes-graphics/drm/libdrm_2.4.113.bb
index 48838245dd..959ef68032 100644
--- a/poky/meta/recipes-graphics/drm/libdrm_2.4.112.bb
+++ b/poky/meta/recipes-graphics/drm/libdrm_2.4.113.bb
@@ -13,28 +13,29 @@ DEPENDS = "libpthread-stubs"
SRC_URI = "http://dri.freedesktop.org/libdrm/${BP}.tar.xz \
"
-SRC_URI[sha256sum] = "00b07710bd09b35cd8d80eaf4f4497fe27f4becf467a9830f1f5e8324f8420ff"
+SRC_URI[sha256sum] = "7fd7eb2967f63beb4606f22d50e277d993480d05ef75dd88a9bd8e677323e5e1"
inherit meson pkgconfig manpages
-PACKAGECONFIG ??= "intel radeon amdgpu nouveau vmwgfx omap freedreno vc4 etnaviv install-test-programs"
-PACKAGECONFIG[intel] = "-Dintel=true,-Dintel=false,libpciaccess"
-PACKAGECONFIG[radeon] = "-Dradeon=true,-Dradeon=false"
-PACKAGECONFIG[amdgpu] = "-Damdgpu=true,-Damdgpu=false"
-PACKAGECONFIG[nouveau] = "-Dnouveau=true,-Dnouveau=false"
-PACKAGECONFIG[vmwgfx] = "-Dvmwgfx=true,-Dvmwgfx=false"
-PACKAGECONFIG[omap] = "-Domap=true,-Domap=false"
-PACKAGECONFIG[exynos] = "-Dexynos=true,-Dexynos=false"
-PACKAGECONFIG[freedreno] = "-Dfreedreno=true,-Dfreedreno=false"
-PACKAGECONFIG[tegra] = "-Dtegra=true,-Dtegra=false"
-PACKAGECONFIG[vc4] = "-Dvc4=true,-Dvc4=false"
-PACKAGECONFIG[etnaviv] = "-Detnaviv=true,-Detnaviv=false"
+PACKAGECONFIG ??= "intel radeon amdgpu nouveau vmwgfx omap freedreno vc4 etnaviv tests install-test-programs"
+PACKAGECONFIG[intel] = "-Dintel=enabled,-Dintel=disabled,libpciaccess"
+PACKAGECONFIG[radeon] = "-Dradeon=enabled,-Dradeon=disabled"
+PACKAGECONFIG[amdgpu] = "-Damdgpu=enabled,-Damdgpu=disabled"
+PACKAGECONFIG[nouveau] = "-Dnouveau=enabled,-Dnouveau=disabled"
+PACKAGECONFIG[vmwgfx] = "-Dvmwgfx=enabled,-Dvmwgfx=disabled"
+PACKAGECONFIG[omap] = "-Domap=enabled,-Domap=disabled"
+PACKAGECONFIG[exynos] = "-Dexynos=enabled,-Dexynos=disabled"
+PACKAGECONFIG[freedreno] = "-Dfreedreno=enabled,-Dfreedreno=disabled"
+PACKAGECONFIG[tegra] = "-Dtegra=enabled,-Dtegra=disabled"
+PACKAGECONFIG[vc4] = "-Dvc4=enabled,-Dvc4=disabled"
+PACKAGECONFIG[etnaviv] = "-Detnaviv=enabled,-Detnaviv=disabled"
PACKAGECONFIG[freedreno-kgsl] = "-Dfreedreno-kgsl=true,-Dfreedreno-kgsl=false"
-PACKAGECONFIG[valgrind] = "-Dvalgrind=true,-Dvalgrind=false,valgrind"
+PACKAGECONFIG[valgrind] = "-Dvalgrind=enabled,-Dvalgrind=disabled,valgrind"
PACKAGECONFIG[install-test-programs] = "-Dinstall-test-programs=true,-Dinstall-test-programs=false"
-PACKAGECONFIG[cairo-tests] = "-Dcairo-tests=true,-Dcairo-tests=false"
+PACKAGECONFIG[cairo-tests] = "-Dcairo-tests=enabled,-Dcairo-tests=disabled"
+PACKAGECONFIG[tests] = "-Dtests=true,-Dtests=false"
PACKAGECONFIG[udev] = "-Dudev=true,-Dudev=false,udev"
-PACKAGECONFIG[manpages] = "-Dman-pages=true,-Dman-pages=false,libxslt-native xmlto-native python3-docutils-native"
+PACKAGECONFIG[manpages] = "-Dman-pages=enabled,-Dman-pages=disabled,libxslt-native xmlto-native python3-docutils-native"
ALLOW_EMPTY:${PN}-drivers = "1"
PACKAGES =+ "${PN}-tests ${PN}-drivers ${PN}-radeon ${PN}-nouveau ${PN}-omap \
diff --git a/poky/meta/recipes-graphics/harfbuzz/harfbuzz_5.1.0.bb b/poky/meta/recipes-graphics/harfbuzz/harfbuzz_5.1.0.bb
index 4c2d774803..4905e8e2ad 100644
--- a/poky/meta/recipes-graphics/harfbuzz/harfbuzz_5.1.0.bb
+++ b/poky/meta/recipes-graphics/harfbuzz/harfbuzz_5.1.0.bb
@@ -8,15 +8,12 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=6ee0f16281694fb6aa689cca1e0fb3da \
file://src/hb-ucd.cc;beginline=1;endline=15;md5=29d4dcb6410429195df67efe3382d8bc \
"
-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 = "${GITHUB_BASE_URI}/download/${PV}/${BPN}-${PV}.tar.xz \
file://0001-fix-signedness-of-char-in-tests.patch \
"
SRC_URI[sha256sum] = "2edb95db668781aaa8d60959d21be2ff80085f31b12053cdd660d9a50ce84f05"
-inherit meson pkgconfig lib_package gtk-doc gobject-introspection
+inherit meson pkgconfig lib_package gtk-doc gobject-introspection github-releases
GIR_MESON_ENABLE_FLAG = 'enabled'
GIR_MESON_DISABLE_FLAG = 'disabled'
diff --git a/poky/meta/recipes-graphics/kmscube/kmscube/0001-drm-common.c-do-not-use-invalid-modifier.patch b/poky/meta/recipes-graphics/kmscube/kmscube/0001-drm-common.c-do-not-use-invalid-modifier.patch
deleted file mode 100644
index 58ff3ba561..0000000000
--- a/poky/meta/recipes-graphics/kmscube/kmscube/0001-drm-common.c-do-not-use-invalid-modifier.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From bdde833c254092a47df6c7109a9751653c82aaae Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex@linutronix.de>
-Date: Mon, 8 Aug 2022 20:22:39 +0200
-Subject: [PATCH] drm-common.c: do not use invalid modifier
-
-Prior to kernel 5.19 this was a soft failure, but 5.19
-adds checks that result in a hard syscall fail.
-
-Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/kmscube/-/merge_requests/33]
-Signed-off-by: Alexander Kanavin <alex@linutronix.de>
----
- drm-common.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/drm-common.c b/drm-common.c
-index 5c9cca2..964e1c3 100644
---- a/drm-common.c
-+++ b/drm-common.c
-@@ -92,7 +92,7 @@ struct drm_fb * drm_fb_get_from_bo(struct gbm_bo *bo)
- modifiers[i] = modifiers[0];
- }
-
-- if (modifiers[0]) {
-+ if (modifiers[0] && modifiers[0] != DRM_FORMAT_MOD_INVALID) {
- flags = DRM_MODE_FB_MODIFIERS;
- printf("Using modifier %" PRIx64 "\n", modifiers[0]);
- }
diff --git a/poky/meta/recipes-graphics/kmscube/kmscube/0001-texturator-Use-correct-GL-extension-header.patch b/poky/meta/recipes-graphics/kmscube/kmscube/0001-texturator-Use-correct-GL-extension-header.patch
deleted file mode 100644
index 5965782de7..0000000000
--- a/poky/meta/recipes-graphics/kmscube/kmscube/0001-texturator-Use-correct-GL-extension-header.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 2b74e0e32235f6ab2e3e42d53dea985a7ba6227f Mon Sep 17 00:00:00 2001
-From: Damian Hobson-Garcia <dhobsong@igel.co.jp>
-Date: Wed, 16 Dec 2020 11:08:25 +0900
-Subject: [PATCH] texturator: Use correct GL extension header
-
-gl2ext.h is the extenstion header for OpenGL ES 2.0 and all later
-versions according to the Khronos documentation [1]. gl3ext.h is either
-an empty stub, or may not even exist on some platforms.
-
-[1]: https://www.khronos.org/registry/OpenGL/index_es.php#headers
-
-Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/kmscube/-/merge_requests/26]
-Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
----
- texturator.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/texturator.c b/texturator.c
-index d9335d7..6d97856 100644
---- a/texturator.c
-+++ b/texturator.c
-@@ -30,7 +30,7 @@
- #include <math.h>
-
- #include <GLES3/gl3.h>
--#include <GLES3/gl3ext.h>
-+#include <GLES2/gl2ext.h>
-
- #ifdef HAVE_LIBPNG
- #include <png.h>
---
-2.33.1
-
diff --git a/poky/meta/recipes-graphics/kmscube/kmscube_git.bb b/poky/meta/recipes-graphics/kmscube/kmscube_git.bb
index f7ee6e4e10..6ed97dfafe 100644
--- a/poky/meta/recipes-graphics/kmscube/kmscube_git.bb
+++ b/poky/meta/recipes-graphics/kmscube/kmscube_git.bb
@@ -10,11 +10,8 @@ DEPENDS = "virtual/libgles3 virtual/libgles2 virtual/egl libdrm"
LIC_FILES_CHKSUM = "file://kmscube.c;beginline=1;endline=23;md5=8b309d4ee67b7315ff7381270dd631fb"
-SRCREV = "9f63f359fab1b5d8e862508e4e51c9dfe339ccb0"
-SRC_URI = "git://gitlab.freedesktop.org/mesa/kmscube;branch=master;protocol=https \
- file://0001-texturator-Use-correct-GL-extension-header.patch \
- file://0001-drm-common.c-do-not-use-invalid-modifier.patch \
- "
+SRCREV = "3bf6ee1a02334386d87cfe356c3bfb0b24e1fed8"
+SRC_URI = "git://gitlab.freedesktop.org/mesa/kmscube;branch=master;protocol=https"
UPSTREAM_CHECK_COMMITS = "1"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.9.bb b/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.9.bb
index 487fc00360..1210f73a86 100644
--- a/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.9.bb
+++ b/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.9.bb
@@ -9,13 +9,13 @@ SECTION = "libs"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=58ef4c80d401e07bd9ee8b6b58cf464b"
-SRC_URI = "https://github.com/anholt/${BPN}/releases/download/${PV}/${BP}.tar.xz \
+SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/${BP}.tar.xz \
file://0001-dispatch_common.h-define-also-EGL_NO_X11.patch \
"
SRC_URI[sha256sum] = "d168a19a6edfdd9977fef1308ccf516079856a4275cf876de688fb7927e365e4"
-UPSTREAM_CHECK_URI = "https://github.com/anholt/libepoxy/releases"
+GITHUB_BASE_URI = "https://github.com/anholt/libepoxy/releases"
-inherit meson pkgconfig features_check
+inherit meson pkgconfig features_check github-releases
REQUIRED_DISTRO_FEATURES = "opengl"
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
deleted file mode 100644
index fc74d30556..0000000000
--- a/poky/meta/recipes-graphics/libsdl2/libsdl2/0001-video-restore-ability-to-disable-fb-accel-via-hint.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-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_2.0.22.bb b/poky/meta/recipes-graphics/libsdl2/libsdl2_2.24.0.bb
index ff3e162c49..d5cbf73df2 100644
--- a/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.22.bb
+++ b/poky/meta/recipes-graphics/libsdl2/libsdl2_2.24.0.bb
@@ -22,13 +22,12 @@ 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://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] = "fe7cbf3127882e3fc7259a75a0cb585620272c51745d3852ab9dd87960697f2e"
+SRC_URI[sha256sum] = "91e4c34b1768f92d399b078e171448c6af18cafda743987ed2064a28954d6d97"
inherit cmake lib_package binconfig-disabled pkgconfig upstream-version-is-even
@@ -43,9 +42,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 \
@@ -62,7 +59,7 @@ PACKAGECONFIG:class-native = "x11 ${PACKAGECONFIG_GL}"
PACKAGECONFIG:class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} ${PACKAGECONFIG_GL}"
PACKAGECONFIG ??= " \
${PACKAGECONFIG_GL} \
- ${@bb.utils.filter('DISTRO_FEATURES', 'alsa directfb pulseaudio x11', d)} \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'alsa directfb pulseaudio x11 vulkan', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland gles2', '', d)} \
${@bb.utils.contains("TUNE_FEATURES", "neon","arm-neon","",d)} \
"
@@ -77,9 +74,12 @@ PACKAGECONFIG[kmsdrm] = "-DSDL_KMSDRM=ON,-DSDL_KMSDRM=OFF,libdrm virtual/lib
PACKAGECONFIG[libusb] = ",,libusb1"
PACKAGECONFIG[opengl] = "-DSDL_OPENGL=ON,-DSDL_OPENGL=OFF,virtual/egl"
PACKAGECONFIG[pulseaudio] = "-DSDL_PULSEAUDIO=ON,-DSDL_PULSEAUDIO=OFF,pulseaudio"
+PACKAGECONFIG[vulkan] = "-DSDL_VULKAN=ON,-DSDL_VULKAN=OFF"
PACKAGECONFIG[wayland] = "-DSDL_WAYLAND=ON,-DSDL_WAYLAND=OFF,wayland-native wayland wayland-protocols libxkbcommon"
PACKAGECONFIG[x11] = "-DSDL_X11=ON,-DSDL_X11=OFF,virtual/libx11 libxext libxrandr libxrender"
CFLAGS:append:class-native = " -DNO_SHARED_MEMORY"
+FILES:${PN} += "${datadir}/licenses/SDL2/LICENSE.txt"
+
BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-graphics/libva/libva.inc b/poky/meta/recipes-graphics/libva/libva.inc
index 956cd50756..735f2fca5b 100644
--- a/poky/meta/recipes-graphics/libva/libva.inc
+++ b/poky/meta/recipes-graphics/libva/libva.inc
@@ -16,17 +16,17 @@ BUGTRACKER = "https://github.com/intel/libva/issues"
SECTION = "x11"
LICENSE = "MIT"
-SRC_URI = "https://github.com/intel/libva/releases/download/${PV}/libva-${PV}.tar.bz2"
+SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/libva-${PV}.tar.bz2"
LIC_FILES_CHKSUM = "file://COPYING;md5=2e48940f94acb0af582e5ef03537800f"
SRC_URI[sha256sum] = "258ed409458d3e7a000e1908bc852619615ee6a933359c745fcd93eb3e461eca"
S = "${WORKDIR}/libva-${PV}"
-UPSTREAM_CHECK_URI = "https://github.com/intel/libva/releases"
+GITHUB_BASE_URI = "https://github.com/intel/libva/releases"
DEPENDS = "libdrm"
-inherit meson pkgconfig
+inherit meson pkgconfig github-releases
PACKAGECONFIG[x11] = "-Dwith_x11=yes,-Dwith_x11=no,virtual/libx11 libxext libxfixes"
PACKAGECONFIG[glx] = "-Dwith_glx=yes,-Dwith_glx=no,virtual/mesa"
diff --git a/poky/meta/recipes-graphics/mesa/files/0001-Revert-egl-wayland-deprecate-drm_handle_format-and-d.patch b/poky/meta/recipes-graphics/mesa/files/0001-Revert-egl-wayland-deprecate-drm_handle_format-and-d.patch
deleted file mode 100644
index dac2de4e62..0000000000
--- a/poky/meta/recipes-graphics/mesa/files/0001-Revert-egl-wayland-deprecate-drm_handle_format-and-d.patch
+++ /dev/null
@@ -1,158 +0,0 @@
-From 7796c2c56c960ac55e49246f0349ac52539ada55 Mon Sep 17 00:00:00 2001
-From: Leandro Ribeiro <leandro.ribeiro@collabora.com>
-Date: Sun, 10 Apr 2022 22:54:36 -0300
-Subject: [PATCH] Revert "egl/wayland: deprecate drm_handle_format() and
- drm_handle_capabilities()"
-
-Commit af1ee8e010441f8f2ed8c77065b159652a4ac9fe dropped support to
-wl_drm, as we thought that most compositors from active projects were
-already supporting zwp_linux_dmabuf_v1.
-
-But that's not true, so revert this commit in order to give these
-projects a longer transition period.
-
-Note that we didn't add back the support to GEM name API, and that was
-on purpose.
-
-Signed-off-by: Leandro Ribeiro <leandro.ribeiro@collabora.com>
-Reviewed-by: Simon Ser <contact@emersion.fr>
-Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15822>
-
-Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
-Upstream-Status: Backport [https://gitlab.freedesktop.org/mesa/mesa/-/commit/c60fea8c228ae3f32e20d6b65c473d9f04871d20]
----
- src/egl/drivers/dri2/egl_dri2.h | 1 +
- src/egl/drivers/dri2/platform_wayland.c | 59 +++++++++++++++++++------
- 2 files changed, 47 insertions(+), 13 deletions(-)
-
-diff --git a/src/egl/drivers/dri2/egl_dri2.h b/src/egl/drivers/dri2/egl_dri2.h
-index c466ff83c53..eecb32a53fd 100644
---- a/src/egl/drivers/dri2/egl_dri2.h
-+++ b/src/egl/drivers/dri2/egl_dri2.h
-@@ -283,6 +283,7 @@ struct dri2_egl_display
- struct zwp_linux_dmabuf_feedback_v1 *wl_dmabuf_feedback;
- struct dmabuf_feedback_format_table format_table;
- bool authenticated;
-+ uint32_t capabilities;
- char *device_name;
- #endif
-
-diff --git a/src/egl/drivers/dri2/platform_wayland.c b/src/egl/drivers/dri2/platform_wayland.c
-index 5ff83cce08a..843434376a7 100644
---- a/src/egl/drivers/dri2/platform_wayland.c
-+++ b/src/egl/drivers/dri2/platform_wayland.c
-@@ -1343,7 +1343,7 @@ create_wl_buffer(struct dri2_egl_display *dri2_dpy,
- struct dri2_egl_surface *dri2_surf,
- __DRIimage *image)
- {
-- struct wl_buffer *ret;
-+ struct wl_buffer *ret = NULL;
- EGLBoolean query;
- int width, height, fourcc, num_planes;
- uint64_t modifier = DRM_FORMAT_MOD_INVALID;
-@@ -1447,11 +1447,28 @@ create_wl_buffer(struct dri2_egl_display *dri2_dpy,
- ret = zwp_linux_buffer_params_v1_create_immed(params, width, height,
- fourcc, 0);
- zwp_linux_buffer_params_v1_destroy(params);
-+ } else {
-+ struct wl_drm *wl_drm =
-+ dri2_surf ? dri2_surf->wl_drm_wrapper : dri2_dpy->wl_drm;
-+ int fd = -1, stride;
-+
-+ if (num_planes > 1)
-+ return NULL;
-+
-+ query = dri2_dpy->image->queryImage(image, __DRI_IMAGE_ATTRIB_FD, &fd);
-+ query &= dri2_dpy->image->queryImage(image, __DRI_IMAGE_ATTRIB_STRIDE, &stride);
-+ if (!query) {
-+ if (fd >= 0)
-+ close(fd);
-+ return NULL;
-+ }
-
-- return ret;
-+ ret = wl_drm_create_prime_buffer(wl_drm, fd, width, height, fourcc, 0,
-+ stride, 0, 0, 0, 0);
-+ close(fd);
- }
-
-- return NULL;
-+ return ret;
- }
-
- static EGLBoolean
-@@ -1698,16 +1715,21 @@ drm_handle_device(void *data, struct wl_drm *drm, const char *device)
- static void
- drm_handle_format(void *data, struct wl_drm *drm, uint32_t format)
- {
-- /* deprecated, as compositors already support the dma-buf protocol extension
-- * and so we can rely on dmabuf_handle_modifier() to receive formats and
-- * modifiers */
-+ struct dri2_egl_display *dri2_dpy = data;
-+ int visual_idx = dri2_wl_visual_idx_from_fourcc(format);
-+
-+ if (visual_idx == -1)
-+ return;
-+
-+ BITSET_SET(dri2_dpy->formats.formats_bitmap, visual_idx);
- }
-
- static void
- drm_handle_capabilities(void *data, struct wl_drm *drm, uint32_t value)
- {
-- /* deprecated, as compositors already support the dma-buf protocol extension
-- * and so we can rely on it to create wl_buffer's */
-+ struct dri2_egl_display *dri2_dpy = data;
-+
-+ dri2_dpy->capabilities = value;
- }
-
- static void
-@@ -2075,13 +2097,12 @@ dri2_initialize_wayland_drm(_EGLDisplay *disp)
- wl_registry_add_listener(dri2_dpy->wl_registry,
- &registry_listener_drm, dri2_dpy);
-
-- /* The compositor must expose the dma-buf interface. */
-- if (roundtrip(dri2_dpy) < 0 || dri2_dpy->wl_dmabuf == NULL)
-+ if (roundtrip(dri2_dpy) < 0)
- goto cleanup;
-
- /* Get default dma-buf feedback */
-- if (zwp_linux_dmabuf_v1_get_version(dri2_dpy->wl_dmabuf) >=
-- ZWP_LINUX_DMABUF_V1_GET_DEFAULT_FEEDBACK_SINCE_VERSION) {
-+ if (dri2_dpy->wl_dmabuf && zwp_linux_dmabuf_v1_get_version(dri2_dpy->wl_dmabuf) >=
-+ ZWP_LINUX_DMABUF_V1_GET_DEFAULT_FEEDBACK_SINCE_VERSION) {
- dmabuf_feedback_format_table_init(&dri2_dpy->format_table);
- dri2_dpy->wl_dmabuf_feedback =
- zwp_linux_dmabuf_v1_get_default_feedback(dri2_dpy->wl_dmabuf);
-@@ -2089,7 +2110,6 @@ dri2_initialize_wayland_drm(_EGLDisplay *disp)
- &dmabuf_feedback_listener, dri2_dpy);
- }
-
-- /* Receive events from the interfaces */
- if (roundtrip(dri2_dpy) < 0)
- goto cleanup;
-
-@@ -2176,6 +2196,19 @@ dri2_initialize_wayland_drm(_EGLDisplay *disp)
-
- dri2_wl_setup_swap_interval(disp);
-
-+ if (dri2_dpy->wl_drm) {
-+ /* To use Prime, we must have _DRI_IMAGE v7 at least. createImageFromFds
-+ * support indicates that Prime export/import is supported by the driver.
-+ * We deprecated the support to GEM names API, so we bail out if the
-+ * driver does not suport Prime. */
-+ if (!(dri2_dpy->capabilities & WL_DRM_CAPABILITY_PRIME) ||
-+ (dri2_dpy->image->base.version < 7) ||
-+ (dri2_dpy->image->createImageFromFds == NULL)) {
-+ _eglLog(_EGL_WARNING, "wayland-egl: display does not support prime");
-+ goto cleanup;
-+ }
-+ }
-+
- if (dri2_dpy->is_different_gpu &&
- (dri2_dpy->image->base.version < 9 ||
- dri2_dpy->image->blitImage == NULL)) {
---
-2.35.1
-
diff --git a/poky/meta/recipes-graphics/mesa/files/0001-futex.h-Define-__NR_futex-if-it-does-not-exist.patch b/poky/meta/recipes-graphics/mesa/files/0001-futex.h-Define-__NR_futex-if-it-does-not-exist.patch
index 3b0bfa323b..e7d92197be 100644
--- a/poky/meta/recipes-graphics/mesa/files/0001-futex.h-Define-__NR_futex-if-it-does-not-exist.patch
+++ b/poky/meta/recipes-graphics/mesa/files/0001-futex.h-Define-__NR_futex-if-it-does-not-exist.patch
@@ -1,4 +1,4 @@
-From 253b042d2bf10e9abfa9cc508e0782aefd834145 Mon Sep 17 00:00:00 2001
+From 859bfc342d1db9b61c43f30d9aa27cea35ca7599 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 16 Oct 2020 11:03:47 -0700
Subject: [PATCH] futex.h: Define __NR_futex if it does not exist
@@ -18,12 +18,12 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 4 insertions(+)
diff --git a/src/util/futex.h b/src/util/futex.h
-index 43097f4..941b0ec 100644
+index 2a2a00c..92fc123 100644
--- a/src/util/futex.h
+++ b/src/util/futex.h
-@@ -34,6 +34,10 @@
- #include <sys/syscall.h>
- #include <sys/time.h>
+@@ -38,6 +38,10 @@
+ #define SYS_futex SYS_futex_time64
+ #endif
+#if !defined(SYS_futex) && defined(SYS_futex_time64)
+# define SYS_futex SYS_futex_time64
diff --git a/poky/meta/recipes-graphics/mesa/files/0001-meson-misdetects-64bit-atomics-on-mips-clang.patch b/poky/meta/recipes-graphics/mesa/files/0001-meson-misdetects-64bit-atomics-on-mips-clang.patch
index b08e4d86c2..9cd9bee2d2 100644
--- a/poky/meta/recipes-graphics/mesa/files/0001-meson-misdetects-64bit-atomics-on-mips-clang.patch
+++ b/poky/meta/recipes-graphics/mesa/files/0001-meson-misdetects-64bit-atomics-on-mips-clang.patch
@@ -1,4 +1,4 @@
-From d34bdbd80e5a1f309d2ba280cdc66ff0ee0e5c43 Mon Sep 17 00:00:00 2001
+From 3ef37c63f03ad6f2af407de350486fdd25e9132a Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 13 Jan 2020 15:23:47 -0800
Subject: [PATCH] meson misdetects 64bit atomics on mips/clang
diff --git a/poky/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch b/poky/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch
index aea23d0ec2..ec263ce479 100644
--- a/poky/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch
+++ b/poky/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch
@@ -1,4 +1,4 @@
-From f9c597a2c517eb85c23cbeeb2e95c55794c74cda Mon Sep 17 00:00:00 2001
+From d092a9000da62dfccca5b58fca56b94eb9989c48 Mon Sep 17 00:00:00 2001
From: Alistair Francis <alistair@alistair23.me>
Date: Thu, 14 Nov 2019 13:04:49 -0800
Subject: [PATCH] meson.build: check for all linux host_os combinations
@@ -20,10 +20,10 @@ Signed-off-by: Alistair Francis <alistair@alistair23.me>
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/meson.build b/meson.build
-index bca6b1f..70d06c0 100644
+index 250b528..b5c98f8 100644
--- a/meson.build
+++ b/meson.build
-@@ -172,7 +172,7 @@ with_any_opengl = with_opengl or with_gles1 or with_gles2
+@@ -173,7 +173,7 @@ with_any_opengl = with_opengl or with_gles1 or with_gles2
# Only build shared_glapi if at least one OpenGL API is enabled
with_shared_glapi = with_shared_glapi and with_any_opengl
@@ -32,11 +32,11 @@ index bca6b1f..70d06c0 100644
dri_drivers = get_option('dri-drivers')
if dri_drivers.length() != 0
-@@ -1074,7 +1074,7 @@ if cc.compiles('__uint128_t foo(void) { return 0; }',
+@@ -1091,7 +1091,7 @@ if cc.has_function('reallocarray')
endif
# TODO: this is very incomplete
--if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd', 'haiku'].contains(host_machine.system())
+-if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd', 'haiku', 'android'].contains(host_machine.system())
+if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd', 'haiku'].contains(host_machine.system()) or host_machine.system().startswith('linux')
pre_args += '-D_GNU_SOURCE'
elif host_machine.system() == 'sunos'
diff --git a/poky/meta/recipes-graphics/mesa/files/0001-nir-nir_opt_move-fix-ALWAYS_INLINE-compiler-error.patch b/poky/meta/recipes-graphics/mesa/files/0001-nir-nir_opt_move-fix-ALWAYS_INLINE-compiler-error.patch
index 48fc1e37ff..7989843eb4 100644
--- a/poky/meta/recipes-graphics/mesa/files/0001-nir-nir_opt_move-fix-ALWAYS_INLINE-compiler-error.patch
+++ b/poky/meta/recipes-graphics/mesa/files/0001-nir-nir_opt_move-fix-ALWAYS_INLINE-compiler-error.patch
@@ -1,3 +1,11 @@
+From da6e47f1717f34c73de388c56ffaf4861a07fdc5 Mon Sep 17 00:00:00 2001
+From: t bettler <thomas.bettler@gmail.com>
+Date: Sat, 9 Jul 2022 09:28:51 +0000
+Subject: [PATCH] nir/nir_opt_move: fix ALWAYS_INLINE compiler error
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
Backport merge request to fix mesa compile error when debug build
enabled.
@@ -5,10 +13,6 @@ Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_req
Signed-off-by: Kai Kang <kai.kang@windriver.com>
-From c69c6e7a35205557de73734ad4a1f411c8f99926 Mon Sep 17 00:00:00 2001
-From: t bettler <thomas.bettler@gmail.com>
-Date: Sat, 9 Jul 2022 09:28:51 +0000
-Subject: [PATCH] nir/nir_opt_move: fix ALWAYS_INLINE compiler error
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -17,13 +21,14 @@ fix call to ‘always_inline’ ‘src_is_ssa’
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6825
Fixes: f1d20ec67c3f186886b97de94f74484650f8fda1 ("nir/nir_opt_move: handle non-SSA defs ")
+
---
src/compiler/nir/nir_inline_helpers.h | 10 ++++++++--
src/compiler/nir/nir_opt_move.c | 2 +-
2 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/src/compiler/nir/nir_inline_helpers.h b/src/compiler/nir/nir_inline_helpers.h
-index 125dd8a537c..ec33f0509f7 100644
+index 125dd8a..ec33f05 100644
--- a/src/compiler/nir/nir_inline_helpers.h
+++ b/src/compiler/nir/nir_inline_helpers.h
@@ -73,8 +73,8 @@ nir_foreach_dest(nir_instr *instr, nir_foreach_dest_cb cb, void *state)
@@ -48,7 +53,7 @@ index 125dd8a537c..ec33f0509f7 100644
+ return _nir_foreach_src(instr, cb, state);
+}
diff --git a/src/compiler/nir/nir_opt_move.c b/src/compiler/nir/nir_opt_move.c
-index 81bcde5c436..051c3cc6295 100644
+index 81bcde5..051c3cc 100644
--- a/src/compiler/nir/nir_opt_move.c
+++ b/src/compiler/nir/nir_opt_move.c
@@ -60,7 +60,7 @@ src_is_ssa(nir_src *src, void *state)
@@ -60,6 +65,3 @@ index 81bcde5c436..051c3cc6295 100644
}
static bool
---
-2.34.1
-
diff --git a/poky/meta/recipes-graphics/mesa/files/0001-swrast_kms-use-swkmsDRI2Extension-instead-of-driDRI2.patch b/poky/meta/recipes-graphics/mesa/files/0001-swrast_kms-use-swkmsDRI2Extension-instead-of-driDRI2.patch
deleted file mode 100644
index db25e16f4a..0000000000
--- a/poky/meta/recipes-graphics/mesa/files/0001-swrast_kms-use-swkmsDRI2Extension-instead-of-driDRI2.patch
+++ /dev/null
@@ -1,113 +0,0 @@
-From feb4ec510b1328fdd9aa77305d3273d1f9c7e124 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex@linutronix.de>
-Date: Thu, 9 Jun 2022 11:42:05 +0200
-Subject: [PATCH] swrast_kms: use swkmsDRI2Extension instead of
- driDRI2Extension
-
-This set of changes:
-https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15649
-
-caused a regression in Xorg when using swrast_kms:
- (EE) AIGLX error: Calling driver entry point failed
-
-This commit changes the swrast_kms driver to use a dedicated screen init function
-(which I believe was overlooked); I also took the opportunity to rename the
-associated plumbling to have swrast-specific names.
-
-Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16942]
-Signed-off-by: Alexander Kanavin <alex@linutronix.de>
----
- src/gallium/frontends/dri/dri2.c | 16 ++++++++--------
- src/gallium/frontends/dri/dri_screen.h | 4 ++--
- src/gallium/frontends/dri/dri_util.c | 2 +-
- src/gallium/targets/dri/target.c | 2 +-
- 4 files changed, 12 insertions(+), 12 deletions(-)
-
-diff --git a/src/gallium/frontends/dri/dri2.c b/src/gallium/frontends/dri/dri2.c
-index 63ac9d5..de33789 100644
---- a/src/gallium/frontends/dri/dri2.c
-+++ b/src/gallium/frontends/dri/dri2.c
-@@ -2508,7 +2508,7 @@ release_pipe:
- * Returns the struct gl_config supported by this driver.
- */
- static const __DRIconfig **
--dri_kms_init_screen(__DRIscreen * sPriv)
-+dri_swrast_kms_init_screen(__DRIscreen * sPriv)
- {
- #if defined(GALLIUM_SOFTPIPE)
- const __DRIconfig **configs;
-@@ -2613,8 +2613,8 @@ static const struct __DRIDriverVtableExtensionRec galliumdrm_vtable = {
- * hook. The latter is used to explicitly initialise the kms_swrast driver
- * rather than selecting the approapriate driver as suggested by the loader.
- */
--const struct __DriverAPIRec dri_kms_driver_api = {
-- .InitScreen = dri_kms_init_screen,
-+const struct __DriverAPIRec dri_swrast_kms_driver_api = {
-+ .InitScreen = dri_swrast_kms_init_screen,
- .DestroyScreen = dri_destroy_screen,
- .CreateBuffer = dri2_create_buffer,
- .DestroyBuffer = dri_destroy_buffer,
-@@ -2633,17 +2633,17 @@ const __DRIextension *galliumdrm_driver_extensions[] = {
- NULL
- };
-
--static const struct __DRIDriverVtableExtensionRec dri_kms_vtable = {
-+static const struct __DRIDriverVtableExtensionRec dri_swrast_kms_vtable = {
- .base = { __DRI_DRIVER_VTABLE, 1 },
-- .vtable = &dri_kms_driver_api,
-+ .vtable = &dri_swrast_kms_driver_api,
- };
-
--const __DRIextension *dri_kms_driver_extensions[] = {
-+const __DRIextension *dri_swrast_kms_driver_extensions[] = {
- &driCoreExtension.base,
- &driImageDriverExtension.base,
-- &driDRI2Extension.base,
-+ &swkmsDRI2Extension.base,
- &gallium_config_options.base,
-- &dri_kms_vtable.base,
-+ &dri_swrast_kms_vtable.base,
- NULL
- };
-
-diff --git a/src/gallium/frontends/dri/dri_screen.h b/src/gallium/frontends/dri/dri_screen.h
-index 0ee2feb..0bb8817 100644
---- a/src/gallium/frontends/dri/dri_screen.h
-+++ b/src/gallium/frontends/dri/dri_screen.h
-@@ -168,8 +168,8 @@ dri_destroy_screen_helper(struct dri_screen * screen);
- void
- dri_destroy_screen(__DRIscreen * sPriv);
-
--extern const struct __DriverAPIRec dri_kms_driver_api;
--extern const __DRIextension *dri_kms_driver_extensions[];
-+extern const struct __DriverAPIRec dri_swrast_kms_driver_api;
-+extern const __DRIextension *dri_swrast_kms_driver_extensions[];
- extern const struct __DriverAPIRec galliumdrm_driver_api;
- extern const __DRIextension *galliumdrm_driver_extensions[];
- extern const struct __DriverAPIRec galliumsw_driver_api;
-diff --git a/src/gallium/frontends/dri/dri_util.c b/src/gallium/frontends/dri/dri_util.c
-index 8d60526..03614e1 100644
---- a/src/gallium/frontends/dri/dri_util.c
-+++ b/src/gallium/frontends/dri/dri_util.c
-@@ -187,7 +187,7 @@ swkmsCreateNewScreen(int scrn, int fd,
- const __DRIconfig ***driver_configs, void *data)
- {
- return driCreateNewScreen2(scrn, fd, extensions,
-- dri_kms_driver_extensions,
-+ dri_swrast_kms_driver_extensions,
- driver_configs, data);
- }
-
-diff --git a/src/gallium/targets/dri/target.c b/src/gallium/targets/dri/target.c
-index 9b78351..e02b03b 100644
---- a/src/gallium/targets/dri/target.c
-+++ b/src/gallium/targets/dri/target.c
-@@ -25,7 +25,7 @@ const __DRIextension **__driDriverGetExtensions_kms_swrast(void);
-
- PUBLIC const __DRIextension **__driDriverGetExtensions_kms_swrast(void)
- {
-- return dri_kms_driver_extensions;
-+ return dri_swrast_kms_driver_extensions;
- }
-
- #endif
diff --git a/poky/meta/recipes-graphics/mesa/files/0001-util-format-Check-for-NEON-before-using-it.patch b/poky/meta/recipes-graphics/mesa/files/0001-util-format-Check-for-NEON-before-using-it.patch
index 5c6165c281..d22ff3c8a8 100644
--- a/poky/meta/recipes-graphics/mesa/files/0001-util-format-Check-for-NEON-before-using-it.patch
+++ b/poky/meta/recipes-graphics/mesa/files/0001-util-format-Check-for-NEON-before-using-it.patch
@@ -1,4 +1,4 @@
-From fdb2face4eeac3c20eedcca7520f4e7014225fb4 Mon Sep 17 00:00:00 2001
+From f17e836ef9b1bbc6056790596420b699e48128c2 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Thu, 2 Dec 2021 19:57:42 -0800
Subject: [PATCH] util/format: Check for NEON before using it
@@ -20,10 +20,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/util/format/u_format.c b/src/util/format/u_format.c
-index 36c5e52..f0a0097 100644
+index c071250..0880984 100644
--- a/src/util/format/u_format.c
+++ b/src/util/format/u_format.c
-@@ -1138,7 +1138,7 @@ static void
+@@ -1184,7 +1184,7 @@ static void
util_format_unpack_table_init(void)
{
for (enum pipe_format format = PIPE_FORMAT_NONE; format < PIPE_FORMAT_COUNT; format++) {
diff --git a/poky/meta/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch b/poky/meta/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch
deleted file mode 100644
index af11baee86..0000000000
--- a/poky/meta/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From bf41fa026ae3d378e62fd83d03a6f5933b52ca04 Mon Sep 17 00:00:00 2001
-From: Alistair Francis <alistair@alistair23.me>
-Date: Thu, 14 Nov 2019 13:08:31 -0800
-Subject: [PATCH] meson.build: make TLS ELF optional
-
-USE_ELF_TLS has replaced GLX_USE_TLS so this patch is the original "make
-TLS GLX optional again" patch updated to the latest mesa.
-
-For details, see:
-https://gitlab.freedesktop.org/mesa/mesa/-/issues/966
-
-This prevents runtime segfault on musl:
-
-Traceback (most recent call last):
- File "/home/pokybuild/yocto-worker/musl-qemux86/build/meta/lib/oeqa/core/decorator/__init__.py", line 36, in wrapped_f
- return func(*args, **kwargs)
- File "/home/pokybuild/yocto-worker/musl-qemux86/build/meta/lib/oeqa/runtime/cases/parselogs.py", line 378, in test_parselogs
- self.assertEqual(errcount, 0, msg=self.msg)
-AssertionError: 1 != 0 : Log: /home/pokybuild/yocto-worker/musl-qemux86/build/build/tmp/work/qemux86-poky-linux-musl/core-image-sato-sdk/1.0-r0/target_logs/Xorg.0.log
-
-Upstream-Status: Inappropriate [configuration]
----
- meson.build | 7 +++++--
- meson_options.txt | 6 ++++++
- 2 files changed, 11 insertions(+), 2 deletions(-)
-
-diff --git a/meson.build b/meson.build
-index 70d06c0..1441611 100644
---- a/meson.build
-+++ b/meson.build
-@@ -490,8 +490,11 @@ foreach platform : _platforms
- pre_args += '-DHAVE_@0@_PLATFORM'.format(platform.to_upper())
- endforeach
-
--use_elf_tls = true
--pre_args += '-DUSE_ELF_TLS'
-+use_elf_tls = false
-+if get_option('elf-tls')
-+ use_elf_tls = true
-+ pre_args += '-DUSE_ELF_TLS'
-+endif
-
- if with_platform_android and get_option('platform-sdk-version') >= 29
- # By default the NDK compiler, at least, emits emutls references instead of
-diff --git a/meson_options.txt b/meson_options.txt
-index 1f6ef38..99cc5cb 100644
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -440,6 +440,12 @@ option(
- value : true,
- description : 'Enable direct rendering in GLX and EGL for DRI',
- )
-+option(
-+ 'elf-tls',
-+ type : 'boolean',
-+ value : true,
-+ description : 'Enable TLS support in ELF',
-+)
- option('egl-lib-suffix',
- type : 'string',
- value : '',
diff --git a/poky/meta/recipes-graphics/mesa/mesa-gl_22.1.6.bb b/poky/meta/recipes-graphics/mesa/mesa-gl_22.2.0.bb
index f2bc8f6b5b..f2bc8f6b5b 100644
--- a/poky/meta/recipes-graphics/mesa/mesa-gl_22.1.6.bb
+++ b/poky/meta/recipes-graphics/mesa/mesa-gl_22.2.0.bb
diff --git a/poky/meta/recipes-graphics/mesa/mesa.inc b/poky/meta/recipes-graphics/mesa/mesa.inc
index ea7ed4fd27..8a74e0a80a 100644
--- a/poky/meta/recipes-graphics/mesa/mesa.inc
+++ b/poky/meta/recipes-graphics/mesa/mesa.inc
@@ -10,22 +10,19 @@ HOMEPAGE = "http://mesa3d.org"
BUGTRACKER = "https://bugs.freedesktop.org"
SECTION = "x11"
LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://docs/license.rst;md5=9a383ee9f65a4e939d6630e9b067ff58"
+LIC_FILES_CHKSUM = "file://docs/license.rst;md5=63779ec98d78d823a9dc533a0735ef10"
PE = "2"
SRC_URI = "https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz \
file://0001-meson.build-check-for-all-linux-host_os-combinations.patch \
- file://0002-meson.build-make-TLS-ELF-optional.patch \
file://0001-meson-misdetects-64bit-atomics-on-mips-clang.patch \
file://0001-futex.h-Define-__NR_futex-if-it-does-not-exist.patch \
file://0001-util-format-Check-for-NEON-before-using-it.patch \
- file://0001-Revert-egl-wayland-deprecate-drm_handle_format-and-d.patch \
- file://0001-swrast_kms-use-swkmsDRI2Extension-instead-of-driDRI2.patch \
file://0001-nir-nir_opt_move-fix-ALWAYS_INLINE-compiler-error.patch \
"
-SRC_URI[sha256sum] = "22ced061eb9adab8ea35368246c1995c09723f3f71653cd5050c5cec376e671a"
+SRC_URI[sha256sum] = "b1f9c8fd08f2cae3adf83355bef4d2398e8025f44947332880f2d0066bdafa8c"
UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P<pver>\d+(\.\d+)+)"
@@ -95,7 +92,7 @@ PACKAGECONFIG = " \
${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'opengl egl gles gbm virgl', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'dri3', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'x11 vulkan', 'dri3', '', d)} \
- ${@bb.utils.contains('TCLIBC', 'glibc', 'elf-tls', '', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'vulkan', 'zink', '', d)} \
"
# "gbm" requires "opengl"
@@ -104,7 +101,6 @@ PACKAGECONFIG[gbm] = "-Dgbm=enabled,-Dgbm=disabled"
X11_DEPS = "xorgproto virtual/libx11 libxext libxxf86vm libxdamage libxfixes xrandr"
# "x11" requires "opengl"
PACKAGECONFIG[x11] = ",-Dglx=disabled,${X11_DEPS}"
-PACKAGECONFIG[elf-tls] = "-Delf-tls=true, -Delf-tls=false"
PACKAGECONFIG[xvmc] = "-Dgallium-xvmc=enabled,-Dgallium-xvmc=disabled,libxvmc"
PACKAGECONFIG[wayland] = ",,wayland-native wayland libdrm wayland-protocols"
@@ -117,7 +113,7 @@ VULKAN_DRIVERS:append:x86:class-target = ",intel"
VULKAN_DRIVERS:append:x86-64:class-target = ",intel"
VULKAN_DRIVERS:append ="${@bb.utils.contains('PACKAGECONFIG', 'freedreno', ',freedreno', '', d)}"
VULKAN_DRIVERS:append ="${@bb.utils.contains('PACKAGECONFIG', 'broadcom', ',broadcom', '', d)}"
-PACKAGECONFIG[vulkan] = "-Dvulkan-drivers=${@strip_comma('${VULKAN_DRIVERS}')}, -Dvulkan-drivers='',"
+PACKAGECONFIG[vulkan] = "-Dvulkan-drivers=${@strip_comma('${VULKAN_DRIVERS}')}, -Dvulkan-drivers='',glslang-native vulkan-loader vulkan-headers"
PACKAGECONFIG[opengl] = "-Dopengl=true, -Dopengl=false"
@@ -137,6 +133,7 @@ PACKAGECONFIG[freedreno] = ""
PACKAGECONFIG[kmsro] = ""
PACKAGECONFIG[vc4] = ""
PACKAGECONFIG[v3d] = ""
+PACKAGECONFIG[zink] = ""
GALLIUMDRIVERS = "swrast"
# gallium swrast was found to crash Xorg on startup in x32 qemu
@@ -149,6 +146,7 @@ GALLIUMDRIVERS:append ="${@bb.utils.contains('PACKAGECONFIG', 'freedreno', ',fre
GALLIUMDRIVERS:append ="${@bb.utils.contains('PACKAGECONFIG', 'kmsro', ',kmsro', '', d)}"
GALLIUMDRIVERS:append ="${@bb.utils.contains('PACKAGECONFIG', 'vc4', ',vc4', '', d)}"
GALLIUMDRIVERS:append ="${@bb.utils.contains('PACKAGECONFIG', 'v3d', ',v3d', '', d)}"
+GALLIUMDRIVERS:append ="${@bb.utils.contains('PACKAGECONFIG', 'zink', ',zink', '', d)}"
# radeonsi requires LLVM
GALLIUMDRIVERS_RADEONSI = "${@bb.utils.contains('PACKAGECONFIG', 'r600', ',radeonsi', '', d)}"
@@ -177,6 +175,8 @@ GALLIUMDRIVERS:append ="${@bb.utils.contains('PACKAGECONFIG', 'lima', ',lima', '
PACKAGECONFIG[panfrost] = ""
GALLIUMDRIVERS:append ="${@bb.utils.contains('PACKAGECONFIG', 'panfrost', ',panfrost', '', d)}"
+PACKAGECONFIG[vulkan-beta] = "-Dvulkan-beta=true,-Dvulkan-beta=false"
+
PACKAGECONFIG[osmesa] = "-Dosmesa=true,-Dosmesa=false"
PACKAGECONFIG[unwind] = "-Dlibunwind=enabled,-Dlibunwind=disabled,libunwind"
diff --git a/poky/meta/recipes-graphics/mesa/mesa_22.1.6.bb b/poky/meta/recipes-graphics/mesa/mesa_22.2.0.bb
index 96e8aa38d6..96e8aa38d6 100644
--- a/poky/meta/recipes-graphics/mesa/mesa_22.1.6.bb
+++ b/poky/meta/recipes-graphics/mesa/mesa_22.2.0.bb
diff --git a/poky/meta/recipes-graphics/piglit/piglit/0004-CMakeLists.txt-add-missing-endian.h-check.patch b/poky/meta/recipes-graphics/piglit/piglit/0004-CMakeLists.txt-add-missing-endian.h-check.patch
deleted file mode 100644
index 68f783ebe4..0000000000
--- a/poky/meta/recipes-graphics/piglit/piglit/0004-CMakeLists.txt-add-missing-endian.h-check.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From a8ea135125b284a8a9c965d8091b3d1d9a31849c Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex@linutronix.de>
-Date: Tue, 5 Apr 2022 16:51:34 +0200
-Subject: [PATCH] CMakeLists.txt: add missing endian.h check
-
-This is needed to actually have HAVE_ENDIAN_H defined properly in config.h.
-
-Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/piglit/-/merge_requests/648]
-Signed-off-by: Alexander Kanavin <alex@linutronix.de>
----
- CMakeLists.txt | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 9fb0508da..158fac4bc 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -481,6 +481,7 @@ check_include_file(sys/stat.h HAVE_SYS_STAT_H)
- check_include_file(unistd.h HAVE_UNISTD_H)
- check_include_file(fcntl.h HAVE_FCNTL_H)
- check_include_file(linux/sync_file.h HAVE_LINUX_SYNC_FILE_H)
-+check_include_file(endian.h HAVE_ENDIAN_H)
-
- if(DEFINED PIGLIT_INSTALL_VERSION)
- set(PIGLIT_INSTALL_VERSION_SUFFIX
diff --git a/poky/meta/recipes-graphics/piglit/piglit_git.bb b/poky/meta/recipes-graphics/piglit/piglit_git.bb
index 29360a246b..f758208c6b 100644
--- a/poky/meta/recipes-graphics/piglit/piglit_git.bb
+++ b/poky/meta/recipes-graphics/piglit/piglit_git.bb
@@ -10,11 +10,11 @@ SRC_URI = "git://gitlab.freedesktop.org/mesa/piglit.git;protocol=https;branch=ma
file://0001-cmake-install-bash-completions-in-the-right-place.patch \
file://0002-cmake-use-proper-WAYLAND_INCLUDE_DIRS-variable.patch \
file://0003-tests-util-piglit-shader.c-do-not-hardcode-build-pat.patch \
- file://0004-CMakeLists.txt-add-missing-endian.h-check.patch \
- file://0005-cmake-Don-t-enable-GLX-if-tests-are-disabled.patch"
+ file://0005-cmake-Don-t-enable-GLX-if-tests-are-disabled.patch \
+ "
UPSTREAM_CHECK_COMMITS = "1"
-SRCREV = "6403e90dc7da02d486906cddab8d02c2552a8d46"
+SRCREV = "265896c86f90cb72e8f218ba6a3617fca8b9a1e3"
# (when PV goes above 1.0 remove the trailing r)
PV = "1.0+gitr${SRCPV}"
diff --git a/poky/meta/recipes-graphics/ttf-fonts/liberation-fonts_2.1.5.bb b/poky/meta/recipes-graphics/ttf-fonts/liberation-fonts_2.1.5.bb
index 32247b09c8..b7fdc0d399 100644
--- a/poky/meta/recipes-graphics/ttf-fonts/liberation-fonts_2.1.5.bb
+++ b/poky/meta/recipes-graphics/ttf-fonts/liberation-fonts_2.1.5.bb
@@ -13,11 +13,11 @@ PE = "1"
SRC_URI = "https://github.com/liberationfonts/liberation-fonts/files/7261482/liberation-fonts-ttf-${PV}.tar.gz \
file://30-liberation-aliases.conf"
SRC_URI[sha256sum] = "7191c669bf38899f73a2094ed00f7b800553364f90e2637010a69c0e268f25d0"
-UPSTREAM_CHECK_URI = "https://github.com/liberationfonts/liberation-fonts/releases"
+GITHUB_BASE_URI = "https://github.com/liberationfonts/liberation-fonts/releases"
S = "${WORKDIR}/liberation-fonts-ttf-${PV}"
-inherit allarch fontcache
+inherit allarch fontcache github-releases
do_install () {
install -d ${D}${datadir}/fonts/ttf/
diff --git a/poky/meta/recipes-graphics/virglrenderer/virglrenderer/0001-meson.build-use-python3-directly-for-python.patch b/poky/meta/recipes-graphics/virglrenderer/virglrenderer/0001-meson.build-use-python3-directly-for-python.patch
index 0fd1d511d6..8230ba588b 100644
--- a/poky/meta/recipes-graphics/virglrenderer/virglrenderer/0001-meson.build-use-python3-directly-for-python.patch
+++ b/poky/meta/recipes-graphics/virglrenderer/virglrenderer/0001-meson.build-use-python3-directly-for-python.patch
@@ -1,4 +1,4 @@
-From 63788c63ed39a3ce9994f4315d8997e1a9300d4d Mon Sep 17 00:00:00 2001
+From c853c9e5c44f1b23a15a7ba629ee02f7d8ec23a0 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Mon, 6 Jan 2020 12:44:42 +0100
Subject: [PATCH] meson.build: use 'python3' directly for python
@@ -8,17 +8,18 @@ its configuration).
Upstream-Status: Inappropriate [oe-core specific]
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
---
meson.build | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/meson.build b/meson.build
-index 682d7c8..19d2eae 100644
+index 13d95bb..b241eb2 100644
--- a/meson.build
+++ b/meson.build
-@@ -60,7 +60,7 @@ foreach w : warnings
- endif
- endforeach
+@@ -64,7 +64,7 @@ flags = [
+
+ add_project_arguments(cc.get_supported_arguments(flags), language : 'c')
-prog_python = import('python').find_installation('python3')
+prog_python = 'python3'
diff --git a/poky/meta/recipes-graphics/virglrenderer/virglrenderer/cve-2022-0135.patch b/poky/meta/recipes-graphics/virglrenderer/virglrenderer/cve-2022-0135.patch
deleted file mode 100644
index ae42dc8f6c..0000000000
--- a/poky/meta/recipes-graphics/virglrenderer/virglrenderer/cve-2022-0135.patch
+++ /dev/null
@@ -1,117 +0,0 @@
-From 63aee871365f9c9e7fa9125672302a0fb250d34d Mon Sep 17 00:00:00 2001
-From: Gert Wollny <gert.wollny@collabora.com>
-Date: Tue, 30 Nov 2021 09:16:24 +0100
-Subject: [PATCH 2/2] vrend: propperly check whether the shader image range is
- correct
-
-Also add a test to check the integer underflow.
-
-Closes: #251
-Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
-
-cherry-pick from anongit.freedesktop.org/virglrenderer
-commit 2aed5d4...
-
-CVE: CVE-2022-0135
-Upstream-Status: Backport
-Signed-off-by: Joe Slater <joe.slater@windriver.com>
-
----
- src/vrend_decode.c | 3 +-
- tests/test_fuzzer_formats.c | 57 +++++++++++++++++++++++++++++++++++++
- 2 files changed, 59 insertions(+), 1 deletion(-)
-
-diff --git a/src/vrend_decode.c b/src/vrend_decode.c
-index 91f5f24..6771b10 100644
---- a/src/vrend_decode.c
-+++ b/src/vrend_decode.c
-@@ -1249,8 +1249,9 @@ static int vrend_decode_set_shader_images(struct vrend_context *ctx, const uint3
- if (num_images < 1) {
- return 0;
- }
-+
- if (start_slot > PIPE_MAX_SHADER_IMAGES ||
-- start_slot > PIPE_MAX_SHADER_IMAGES - num_images)
-+ start_slot + num_images > PIPE_MAX_SHADER_IMAGES)
- return EINVAL;
-
- for (uint32_t i = 0; i < num_images; i++) {
-diff --git a/tests/test_fuzzer_formats.c b/tests/test_fuzzer_formats.c
-index 154a2e5..e32caf0 100644
---- a/tests/test_fuzzer_formats.c
-+++ b/tests/test_fuzzer_formats.c
-@@ -958,6 +958,61 @@ static void test_vrend_set_signle_abo_heap_overflow() {
- virgl_renderer_submit_cmd((void *) cmd, ctx_id, 0xde);
- }
-
-+static void test_vrend_set_shader_images_overflow()
-+{
-+ uint32_t num_shaders = PIPE_MAX_SHADER_IMAGES + 1;
-+ uint32_t size = num_shaders * VIRGL_SET_SHADER_IMAGE_ELEMENT_SIZE + 3;
-+ uint32_t cmd[size];
-+ int i = 0;
-+ cmd[i++] = ((size - 1)<< 16) | 0 << 8 | VIRGL_CCMD_SET_SHADER_IMAGES;
-+ cmd[i++] = PIPE_SHADER_FRAGMENT;
-+ memset(&cmd[i], 0, size - i);
-+
-+ virgl_renderer_submit_cmd((void *) cmd, ctx_id, size);
-+}
-+
-+/* Test adapted from yaojun8558363@gmail.com:
-+ * https://gitlab.freedesktop.org/virgl/virglrenderer/-/issues/250
-+*/
-+static void test_vrend_3d_resource_overflow() {
-+
-+ struct virgl_renderer_resource_create_args resource;
-+ resource.handle = 0x4c474572;
-+ resource.target = PIPE_TEXTURE_2D_ARRAY;
-+ resource.format = VIRGL_FORMAT_Z24X8_UNORM;
-+ resource.nr_samples = 2;
-+ resource.last_level = 0;
-+ resource.array_size = 3;
-+ resource.bind = VIRGL_BIND_SAMPLER_VIEW;
-+ resource.depth = 1;
-+ resource.width = 8;
-+ resource.height = 4;
-+ resource.flags = 0;
-+
-+ virgl_renderer_resource_create(&resource, NULL, 0);
-+ virgl_renderer_ctx_attach_resource(ctx_id, resource.handle);
-+
-+ uint32_t size = 0x400;
-+ uint32_t cmd[size];
-+ int i = 0;
-+ cmd[i++] = (size - 1) << 16 | 0 << 8 | VIRGL_CCMD_RESOURCE_INLINE_WRITE;
-+ cmd[i++] = resource.handle;
-+ cmd[i++] = 0; // level
-+ cmd[i++] = 0; // usage
-+ cmd[i++] = 0; // stride
-+ cmd[i++] = 0; // layer_stride
-+ cmd[i++] = 0; // x
-+ cmd[i++] = 0; // y
-+ cmd[i++] = 0; // z
-+ cmd[i++] = 8; // w
-+ cmd[i++] = 4; // h
-+ cmd[i++] = 3; // d
-+ memset(&cmd[i], 0, size - i);
-+
-+ virgl_renderer_submit_cmd((void *) cmd, ctx_id, size);
-+}
-+
-+
- int main()
- {
- initialize_environment();
-@@ -980,6 +1035,8 @@ int main()
- test_cs_nullpointer_deference();
- test_vrend_set_signle_abo_heap_overflow();
-
-+ test_vrend_set_shader_images_overflow();
-+ test_vrend_3d_resource_overflow();
-
- virgl_renderer_context_destroy(ctx_id);
- virgl_renderer_cleanup(&cookie);
---
-2.25.1
-
diff --git a/poky/meta/recipes-graphics/virglrenderer/virglrenderer/cve-2022-0175.patch b/poky/meta/recipes-graphics/virglrenderer/virglrenderer/cve-2022-0175.patch
deleted file mode 100644
index 7fbab75091..0000000000
--- a/poky/meta/recipes-graphics/virglrenderer/virglrenderer/cve-2022-0175.patch
+++ /dev/null
@@ -1,107 +0,0 @@
-From 5ca7aca001092c557f0b6fc1ba3db7dcdab860b7 Mon Sep 17 00:00:00 2001
-From: Gert Wollny <gert.wollny@collabora.com>
-Date: Tue, 30 Nov 2021 09:29:42 +0100
-Subject: [PATCH 1/2] vrend: clear memory when allocating a host-backed memory
- resource
-
-Closes: #249
-Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
-
-cherry-pick from anongit.freedesktop.org/virglrenderer
-commit b05bb61...
-
-CVE: CVE-2022-0175
-Upstream-Status: Backport
-Signed-off-by: Joe Slater <joe.slater@windriver.com>
-
----
- src/vrend_renderer.c | 2 +-
- tests/test_virgl_transfer.c | 51 +++++++++++++++++++++++++++++++++++++
- 2 files changed, 52 insertions(+), 1 deletion(-)
-
-diff --git a/src/vrend_renderer.c b/src/vrend_renderer.c
-index b8b2a36..2650cf2 100644
---- a/src/vrend_renderer.c
-+++ b/src/vrend_renderer.c
-@@ -6788,7 +6788,7 @@ vrend_resource_alloc_buffer(struct vrend_resource *gr, uint32_t flags)
- if (bind == VIRGL_BIND_CUSTOM) {
- /* use iovec directly when attached */
- gr->storage_bits |= VREND_STORAGE_HOST_SYSTEM_MEMORY;
-- gr->ptr = malloc(size);
-+ gr->ptr = calloc(1, size);
- if (!gr->ptr)
- return -ENOMEM;
- } else if (bind == VIRGL_BIND_STAGING) {
-diff --git a/tests/test_virgl_transfer.c b/tests/test_virgl_transfer.c
-index bf7f438..3c53c3d 100644
---- a/tests/test_virgl_transfer.c
-+++ b/tests/test_virgl_transfer.c
-@@ -952,6 +952,56 @@ START_TEST(virgl_test_transfer_near_res_bounds_with_stride_succeeds)
- }
- END_TEST
-
-+START_TEST(test_vrend_host_backed_memory_no_data_leak)
-+{
-+ struct iovec iovs[1];
-+ int niovs = 1;
-+
-+ struct virgl_context ctx = {0};
-+
-+ int ret = testvirgl_init_ctx_cmdbuf(&ctx);
-+
-+ struct virgl_renderer_resource_create_args res;
-+ res.handle = 0x400;
-+ res.target = PIPE_BUFFER;
-+ res.format = VIRGL_FORMAT_R8_UNORM;
-+ res.nr_samples = 0;
-+ res.last_level = 0;
-+ res.array_size = 1;
-+ res.bind = VIRGL_BIND_CUSTOM;
-+ res.depth = 1;
-+ res.width = 32;
-+ res.height = 1;
-+ res.flags = 0;
-+
-+ uint32_t size = 32;
-+ uint8_t* data = calloc(1, size);
-+ memset(data, 1, 32);
-+ iovs[0].iov_base = data;
-+ iovs[0].iov_len = size;
-+
-+ struct pipe_box box = {0,0,0, size, 1,1};
-+
-+ virgl_renderer_resource_create(&res, NULL, 0);
-+ virgl_renderer_ctx_attach_resource(ctx.ctx_id, res.handle);
-+
-+ ret = virgl_renderer_transfer_read_iov(res.handle, ctx.ctx_id, 0, 0, 0,
-+ (struct virgl_box *)&box, 0, iovs, niovs);
-+
-+ ck_assert_int_eq(ret, 0);
-+
-+ for (int i = 0; i < 32; ++i)
-+ ck_assert_int_eq(data[i], 0);
-+
-+ virgl_renderer_ctx_detach_resource(1, res.handle);
-+
-+ virgl_renderer_resource_unref(res.handle);
-+ free(data);
-+
-+}
-+END_TEST
-+
-+
- static Suite *virgl_init_suite(void)
- {
- Suite *s;
-@@ -981,6 +1031,7 @@ static Suite *virgl_init_suite(void)
- tcase_add_test(tc_core, virgl_test_transfer_buffer_bad_strides);
- tcase_add_test(tc_core, virgl_test_transfer_2d_array_bad_layer_stride);
- tcase_add_test(tc_core, virgl_test_transfer_2d_bad_level);
-+ tcase_add_test(tc_core, test_vrend_host_backed_memory_no_data_leak);
-
- tcase_add_loop_test(tc_core, virgl_test_transfer_res_read_valid, 0, PIPE_MAX_TEXTURE_TYPES);
- tcase_add_loop_test(tc_core, virgl_test_transfer_res_write_valid, 0, PIPE_MAX_TEXTURE_TYPES);
---
-2.25.1
-
diff --git a/poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.10.3.bb b/poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.10.3.bb
new file mode 100644
index 0000000000..3480eb954d
--- /dev/null
+++ b/poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.10.3.bb
@@ -0,0 +1,33 @@
+SUMMARY = "VirGL virtual OpenGL renderer"
+DESCRIPTION = "Virgil is a research project to investigate the possibility of \
+creating a virtual 3D GPU for use inside qemu virtual machines, that allows \
+the guest operating system to use the capabilities of the host GPU to \
+accelerate 3D rendering."
+HOMEPAGE = "https://virgil3d.github.io/"
+
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=c81c08eeefd9418fca8f88309a76db10"
+
+DEPENDS = "libdrm libepoxy virtual/egl virtual/libgbm"
+SRCREV = "0922041ec6730122e0fec11404e6859e2efc4bc0"
+SRC_URI = "git://gitlab.freedesktop.org/virgl/virglrenderer.git;branch=master;protocol=https \
+ file://0001-meson.build-use-python3-directly-for-python.patch \
+ "
+
+S = "${WORKDIR}/git"
+
+inherit meson pkgconfig features_check
+
+PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'vulkan', 'venus-experimental', '', d)}"
+
+PACKAGECONFIG[venus-experimental] = "-Dvenus-experimental=true,-Dvenus-experimental=false,vulkan-loader vulkan-headers"
+PACKAGECONFIG[va] = "-Dvideo=true,-Dvideo=false,libva"
+PACKAGECONFIG[render-server] = "-Drender-server=true,-Drender-server=false"
+PACKAGECONFIG[drm-msm-experimental] = "-Ddrm-msm-experimental=true,-Ddrm-msm-experimental=false"
+PACKAGECONFIG[minigbm_allocation] = "-Dminigbm_allocation=true,-Dminigbm_allocation=false"
+PACKAGECONFIG[venus-validate] = "-Dvenus-validate=true,-Dvenus-validate=false"
+PACKAGECONFIG[tests] = "-Dtests=true,-Dtests=false,libcheck"
+
+BBCLASSEXTEND = "native nativesdk"
+
+REQUIRED_DISTRO_FEATURES = "opengl"
diff --git a/poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.9.1.bb b/poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.9.1.bb
deleted file mode 100644
index ad3688e300..0000000000
--- a/poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.9.1.bb
+++ /dev/null
@@ -1,25 +0,0 @@
-SUMMARY = "VirGL virtual OpenGL renderer"
-DESCRIPTION = "Virgil is a research project to investigate the possibility of \
-creating a virtual 3D GPU for use inside qemu virtual machines, that allows \
-the guest operating system to use the capabilities of the host GPU to \
-accelerate 3D rendering."
-HOMEPAGE = "https://virgil3d.github.io/"
-
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=c81c08eeefd9418fca8f88309a76db10"
-
-DEPENDS = "libdrm virtual/egl virtual/libgbm libepoxy"
-SRCREV = "363915595e05fb252e70d6514be2f0c0b5ca312b"
-SRC_URI = "git://anongit.freedesktop.org/git/virglrenderer;branch=branch-0.9.1 \
- file://0001-meson.build-use-python3-directly-for-python.patch \
- file://cve-2022-0135.patch \
- file://cve-2022-0175.patch \
- "
-
-S = "${WORKDIR}/git"
-
-inherit meson pkgconfig features_check
-
-BBCLASSEXTEND = "native nativesdk"
-
-REQUIRED_DISTRO_FEATURES = "opengl"
diff --git a/poky/meta/recipes-graphics/xorg-lib/libfontenc_1.1.4.bb b/poky/meta/recipes-graphics/xorg-lib/libfontenc_1.1.6.bb
index 1fc74b1995..8f9602d3ae 100644
--- a/poky/meta/recipes-graphics/xorg-lib/libfontenc_1.1.4.bb
+++ b/poky/meta/recipes-graphics/xorg-lib/libfontenc_1.1.6.bb
@@ -11,7 +11,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=96254c20ab81c63e65b26f0dbcd4a1c1"
DEPENDS += "zlib xorgproto font-util"
PE = "1"
-SRC_URI[md5sum] = "6447db6a689fb530c218f0f8328c3abc"
-SRC_URI[sha256sum] = "2cfcce810ddd48f2e5dc658d28c1808e86dcf303eaff16728b9aa3dbc0092079"
+XORG_EXT = "tar.xz"
+
+SRC_URI[sha256sum] = "ea8606ed5255dda8f570b7d1a74d59ee8d198675b2f114d07807431e6ba1d111"
BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-graphics/xorg-lib/libxau_1.0.9.bb b/poky/meta/recipes-graphics/xorg-lib/libxau_1.0.10.bb
index 3fbc3a5b44..a62c9f088a 100644
--- a/poky/meta/recipes-graphics/xorg-lib/libxau_1.0.9.bb
+++ b/poky/meta/recipes-graphics/xorg-lib/libxau_1.0.10.bb
@@ -17,8 +17,8 @@ PROVIDES = "xau"
PE = "1"
XORG_PN = "libXau"
+XORG_EXT = "tar.xz"
BBCLASSEXTEND = "native nativesdk"
-SRC_URI[md5sum] = "c5f16288f2da9f071b29111d68797480"
-SRC_URI[sha256sum] = "ccf8cbf0dbf676faa2ea0a6d64bcc3b6746064722b606c8c52917ed00dcb73ec"
+SRC_URI[sha256sum] = "8be6f292334d2f87e5b919c001e149a9fdc27005d6b3e053862ac6ebbf1a0c0a"
diff --git a/poky/meta/recipes-graphics/xorg-lib/libxfont2_2.0.5.bb b/poky/meta/recipes-graphics/xorg-lib/libxfont2_2.0.6.bb
index 10e44c39ba..59d63e7150 100644
--- a/poky/meta/recipes-graphics/xorg-lib/libxfont2_2.0.5.bb
+++ b/poky/meta/recipes-graphics/xorg-lib/libxfont2_2.0.6.bb
@@ -12,10 +12,11 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=a46c8040f2f737bcd0c435feb2ab1c2c"
DEPENDS += "freetype xtrans xorgproto libfontenc zlib"
XORG_PN = "libXfont2"
+XORG_EXT = "tar.xz"
BBCLASSEXTEND = "native"
-SRC_URI[sha256sum] = "aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e"
+SRC_URI[sha256sum] = "74ca20017eb0fb3f56d8d5e60685f560fc85e5ff3d84c61c4cb891e40c27aef4"
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}"
PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
diff --git a/poky/meta/recipes-graphics/xorg-lib/xorg-lib-common.inc b/poky/meta/recipes-graphics/xorg-lib/xorg-lib-common.inc
index 60bc8c76fa..68137c4147 100644
--- a/poky/meta/recipes-graphics/xorg-lib/xorg-lib-common.inc
+++ b/poky/meta/recipes-graphics/xorg-lib/xorg-lib-common.inc
@@ -6,8 +6,9 @@ LICENSE = "MIT"
DEPENDS = "util-macros"
XORG_PN = "${BPN}"
+XORG_EXT ?= "tar.bz2"
-SRC_URI = "${XORG_MIRROR}/individual/lib/${XORG_PN}-${PV}.tar.bz2"
+SRC_URI = "${XORG_MIRROR}/individual/lib/${XORG_PN}-${PV}.${XORG_EXT}"
S = "${WORKDIR}/${XORG_PN}-${PV}"
diff --git a/poky/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb b/poky/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb
index 11613ab3b6..dea7b65a7c 100644
--- a/poky/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb
+++ b/poky/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb
@@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "\
DEPENDS = "git-native"
-SRCREV = "f70b1d52f4706a263ae22e2c61039ccd875e97b6"
+SRCREV = "ba600ef61a85966596126a6e8d936971905e8749"
PV = "0.3+git${SRCPV}"
inherit native
diff --git a/poky/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb b/poky/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb
index 303026ad78..6c0739d64f 100644
--- a/poky/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb
+++ b/poky/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb
@@ -21,13 +21,17 @@ do_install() {
#!/bin/sh
# Expected to be called as: depmodwrapper -a KERNEL_VERSION
if [ "\$1" != "-a" -o "\$2" != "-b" ]; then
- echo "Usage: depmodwrapper -a -b rootfs KERNEL_VERSION" >&2
+ echo "Usage: depmodwrapper -a -b rootfs KERNEL_VERSION [KERNEL_PACKAGE_NAME]" >&2
exit 1
fi
+kernelpkgname="kernel"
+# If no KERNEL_PACKAGE_NAME, assume "kernel".
+[ -z "\$5" ] || kernelpkgname="\$5"
+
kernelabi=""
-if [ -r "${PKGDATA_DIR}/kernel-depmod/kernel-abiversion" ]; then
- kernelabi=\$(cat "${PKGDATA_DIR}/kernel-depmod/kernel-abiversion")
+if [ -r "${PKGDATA_DIR}/\${kernelpkgname}-depmod/\${kernelpkgname}-abiversion" ]; then
+ kernelabi=\$(cat "${PKGDATA_DIR}/\${kernelpkgname}-depmod/\${kernelpkgname}-abiversion")
fi
if [ ! -e "\$3${nonarch_base_libdir}/depmod.d/exclude.conf" ]; then
@@ -35,11 +39,11 @@ if [ ! -e "\$3${nonarch_base_libdir}/depmod.d/exclude.conf" ]; then
echo "exclude .debug" > "\$3${nonarch_base_libdir}/depmod.d/exclude.conf"
fi
-if [ ! -r ${PKGDATA_DIR}/kernel-depmod/System.map-\$4 ] || [ "\$kernelabi" != "\$4" ]; then
- echo "Unable to read: ${PKGDATA_DIR}/kernel-depmod/System.map-\$4" >&2
+if [ ! -r ${PKGDATA_DIR}/\${kernelpkgname}-depmod/System.map-\$4 ] || [ "\$kernelabi" != "\$4" ]; then
+ echo "Unable to read: ${PKGDATA_DIR}/\${kernelpkgname}-depmod/System.map-\$4" >&2
exec env depmod -C "\$3${nonarch_base_libdir}/depmod.d" "\$1" "\$2" "\$3" "\$4"
else
- exec env depmod -C "\$3${nonarch_base_libdir}/depmod.d" "\$1" "\$2" "\$3" -F "${PKGDATA_DIR}/kernel-depmod/System.map-\$4" "\$4"
+ exec env depmod -C "\$3${nonarch_base_libdir}/depmod.d" "\$1" "\$2" "\$3" -F "${PKGDATA_DIR}/\${kernelpkgname}-depmod/System.map-\$4" "\$4"
fi
EOF
chmod +x ${D}${bindir_crossscripts}/depmodwrapper
diff --git a/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20220708.bb b/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20220913.bb
index 91c32e49d6..45c9d0e861 100644
--- a/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20220708.bb
+++ b/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20220913.bb
@@ -132,7 +132,7 @@ LIC_FILES_CHKSUM = "file://LICENCE.Abilis;md5=b5ee3f410780e56711ad48eadc22b8bc \
"
# WHENCE checksum is defined separately to ease overriding it if
# class-devupstream is selected.
-WHENCE_CHKSUM = "def08711eb23ba967fb7e1f8cff66178"
+WHENCE_CHKSUM = "98ecc3d3223df7ebdc23b0ec56aafb20"
# These are not common licenses, set NO_GENERIC_LICENSE for them
# so that the license files will be copied from fetched source
@@ -209,7 +209,7 @@ SRC_URI:class-devupstream = "git://git.kernel.org/pub/scm/linux/kernel/git/firmw
# Pin this to the 20220509 release, override this in local.conf
SRCREV:class-devupstream ?= "b19cbdca78ab2adfd210c91be15a22568e8b8cae"
-SRC_URI[sha256sum] = "0abec827a035c82bdcabdf82aa37ded247bc682ef05861bd409ea6f477bab81d"
+SRC_URI[sha256sum] = "26fd00f2d8e96c4af6f44269a6b893eb857253044f75ad28ef6706a2250cd8e9"
inherit allarch
@@ -311,6 +311,11 @@ PACKAGES =+ "${PN}-ralink-license ${PN}-ralink \
${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-sc8280xp-lenovo-x13s-compat \
+ ${PN}-qcom-sc8280xp-lenovo-x13s-audio \
+ ${PN}-qcom-sc8280xp-lenovo-x13s-adreno \
+ ${PN}-qcom-sc8280xp-lenovo-x13s-compute \
+ ${PN}-qcom-sc8280xp-lenovo-x13s-sensors \
${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 \
@@ -976,6 +981,11 @@ FILES:${PN}-qcom-adreno-a650 = "${nonarch_base_libdir}/firmware/qcom/a650*.* ${n
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-sc8280xp-lenovo-x13s-compat = "${nonarch_base_libdir}/firmware/qcom/LENOVO/21BX"
+FILES:${PN}-qcom-sc8280xp-lenovo-x13s-audio = "${nonarch_base_libdir}/firmware/qcom/sc8280xp/LENOVO/21BX/*adsp*.* ${nonarch_base_libdir}/firmware/qcom/sc8280xp/LENOVO/21BX/battmgr.jsn"
+FILES:${PN}-qcom-sc8280xp-lenovo-x13s-adreno = "${nonarch_base_libdir}/firmware/qcom/sc8280xp/LENOVO/21BX/qcdxkmsuc8280.mbn"
+FILES:${PN}-qcom-sc8280xp-lenovo-x13s-compute = "${nonarch_base_libdir}/firmware/qcom/sc8280xp/LENOVO/21BX/*cdsp*.*"
+FILES:${PN}-qcom-sc8280xp-lenovo-x13s-sensors = "${nonarch_base_libdir}/firmware/qcom/sc8280xp/LENOVO/21BX/*slpi*.*"
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"
@@ -996,12 +1006,21 @@ 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-sc8280xp-lenovo-x13s-audio = "${PN}-qcom-license"
+RDEPENDS:${PN}-qcom-sc8280xp-lenovo-x13s-adreno = "${PN}-qcom-license"
+RDEPENDS:${PN}-qcom-sc8280xp-lenovo-x13s-compute = "${PN}-qcom-license"
+RDEPENDS:${PN}-qcom-sc8280xp-lenovo-x13s-sensors = "${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"
RDEPENDS:${PN}-qcom-sm8250-audio = "${PN}-qcom-license"
RDEPENDS:${PN}-qcom-sm8250-compute = "${PN}-qcom-license"
+RRECOMMENDS:${PN}-qcom-sc8280xp-lenovo-x13s-audio = "${PN}-qcom-sc8280xp-lenovo-x13s-compat"
+RRECOMMENDS:${PN}-qcom-sc8280xp-lenovo-x13s-adreno = "${PN}-qcom-sc8280xp-lenovo-x13s-compat"
+RRECOMMENDS:${PN}-qcom-sc8280xp-lenovo-x13s-compute = "${PN}-qcom-sc8280xp-lenovo-x13s-compat"
+RRECOMMENDS:${PN}-qcom-sc8280xp-lenovo-x13s-sensors = "${PN}-qcom-sc8280xp-lenovo-x13s-compat"
+
FILES:${PN}-liquidio = "${nonarch_base_libdir}/firmware/liquidio"
# For Amlogic VDEC
@@ -1081,3 +1100,6 @@ python populate_packages:prepend () {
# Firmware files are generally not ran on the CPU, so they can be
# allarch despite being architecture specific
INSANE_SKIP = "arch"
+
+# Don't warn about already stripped files
+INSANE_SKIP:${PN} = "already-stripped"
diff --git a/poky/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_5.19.bb b/poky/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_5.19.bb
index 528e1d3379..3557526d14 100644
--- a/poky/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_5.19.bb
+++ b/poky/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_5.19.bb
@@ -7,7 +7,7 @@ SRC_URI:append:libc-musl = "\
file://0001-include-linux-stddef.h-in-swab.h-uapi-header.patch \
"
-SRC_URI:append = "\
+SRC_URI += "\
file://0001-scripts-Use-fixed-input-and-output-files-instead-of-.patch \
file://0001-kbuild-install_headers.sh-Strip-_UAPI-from-if-define.patch \
"
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 9e37494a4b..6f8648e004 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 ?= "cb561ee4438e5961e5c471eee8094737ca873135"
-SRCREV_meta ?= "59c8898d450152a0875af340e6f0e72d05aafdfa"
+SRCREV_machine ?= "dba1b7d90813231782bdeda1bd169c93b35c94e0"
+SRCREV_meta ?= "1128d7bcdcde490d4f35cc00c97f5410bb240d99"
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.62"
+LINUX_VERSION ?= "5.15.68"
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.19.bb b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.19.bb
index c12bec3e4e..b3e9fbae62 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.19.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.19.bb
@@ -11,13 +11,13 @@ python () {
raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it")
}
-SRCREV_machine ?= "df2290e83a50563688e5ea0be34e091f1c623069"
-SRCREV_meta ?= "5eb0fa93f8490a962ff0c36c14d8def271d75128"
+SRCREV_machine ?= "bc8af638c00f28a46e77e34056079087638f6e65"
+SRCREV_meta ?= "350b544d077955b599b54ab364f6227d96a90455"
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.19;destsuffix=${KMETA}"
-LINUX_VERSION ?= "5.19.3"
+LINUX_VERSION ?= "5.19.9"
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
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 2de32ffecd..4f2bb48743 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.62"
+LINUX_VERSION ?= "5.15.68"
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 ?= "b708cb8412758a382516bdc46f26a0b43c50fb82"
-SRCREV_meta ?= "59c8898d450152a0875af340e6f0e72d05aafdfa"
+SRCREV_machine ?= "33e7eea5c4545a973cf01a849c2b45fa0cd1fa13"
+SRCREV_meta ?= "1128d7bcdcde490d4f35cc00c97f5410bb240d99"
PV = "${LINUX_VERSION}+git${SRCPV}"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.19.bb b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.19.bb
index 339f7f69a6..466b7063b4 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.19.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.19.bb
@@ -5,7 +5,7 @@ KCONFIG_MODE = "--allnoconfig"
require recipes-kernel/linux/linux-yocto.inc
-LINUX_VERSION ?= "5.19.3"
+LINUX_VERSION ?= "5.19.9"
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 ?= "4d933456709d664a55fdda85304c08567265ad4d"
-SRCREV_meta ?= "5eb0fa93f8490a962ff0c36c14d8def271d75128"
+SRCREV_machine ?= "65a9a22786a6710fc7b4edb7cfae80dd83f591f1"
+SRCREV_meta ?= "350b544d077955b599b54ab364f6227d96a90455"
PV = "${LINUX_VERSION}+git${SRCPV}"
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 40c430aee3..2f91fb7a37 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 ?= "9b096ff3914926ac68501bf156c2d1368f3ebe6c"
-SRCREV_machine:qemuarm64 ?= "7cb30c5e95067ad12b7c4d371c048c7f5d5c922c"
-SRCREV_machine:qemumips ?= "3210fe826ade54d891cf2120c964d2a0dc3e7393"
-SRCREV_machine:qemuppc ?= "7bfdc3608327b9c471008af370dbffe053f5bed9"
-SRCREV_machine:qemuriscv64 ?= "14879dcc3ca7b24d8650cf117c380a94bb865f40"
-SRCREV_machine:qemuriscv32 ?= "14879dcc3ca7b24d8650cf117c380a94bb865f40"
-SRCREV_machine:qemux86 ?= "14879dcc3ca7b24d8650cf117c380a94bb865f40"
-SRCREV_machine:qemux86-64 ?= "14879dcc3ca7b24d8650cf117c380a94bb865f40"
-SRCREV_machine:qemumips64 ?= "ef125626d718771f11fab19a3f91cca5ec27f887"
-SRCREV_machine ?= "14879dcc3ca7b24d8650cf117c380a94bb865f40"
-SRCREV_meta ?= "59c8898d450152a0875af340e6f0e72d05aafdfa"
+SRCREV_machine:qemuarm ?= "efe28b4b16d4a1a19f59b4650a0bfb23ffc8c40e"
+SRCREV_machine:qemuarm64 ?= "66986670c45f63d2ed2078e07aa817ede88025ad"
+SRCREV_machine:qemumips ?= "aeeb80fd7f684aca830adb7daf32cfd80637cf3a"
+SRCREV_machine:qemuppc ?= "5c6387a562af89ec92546c1374a120ac240f14e6"
+SRCREV_machine:qemuriscv64 ?= "0e51e571701842db33ad96f6ddc8cc6b23230627"
+SRCREV_machine:qemuriscv32 ?= "0e51e571701842db33ad96f6ddc8cc6b23230627"
+SRCREV_machine:qemux86 ?= "0e51e571701842db33ad96f6ddc8cc6b23230627"
+SRCREV_machine:qemux86-64 ?= "0e51e571701842db33ad96f6ddc8cc6b23230627"
+SRCREV_machine:qemumips64 ?= "20ec37851f4ee9965120937dcf2567f15e72e07a"
+SRCREV_machine ?= "0e51e571701842db33ad96f6ddc8cc6b23230627"
+SRCREV_meta ?= "1128d7bcdcde490d4f35cc00c97f5410bb240d99"
# 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 ?= "a0a7e0b2b8b22901945ea2aef1b65871d718accf"
+SRCREV_machine:class-devupstream ?= "dd20085f2a88b6cdb12bdcdbd2d7a761c86b184a"
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.62"
+LINUX_VERSION ?= "5.15.68"
DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
DEPENDS += "openssl-native util-linux-native"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto_5.19.bb b/poky/meta/recipes-kernel/linux/linux-yocto_5.19.bb
index 0ff28aa952..f882972e35 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto_5.19.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto_5.19.bb
@@ -13,24 +13,24 @@ KBRANCH:qemux86 ?= "v5.19/standard/base"
KBRANCH:qemux86-64 ?= "v5.19/standard/base"
KBRANCH:qemumips64 ?= "v5.19/standard/mti-malta64"
-SRCREV_machine:qemuarm ?= "2cbb2d5097fc44a23da635d2ebbccb33df20a34d"
-SRCREV_machine:qemuarm64 ?= "4d933456709d664a55fdda85304c08567265ad4d"
-SRCREV_machine:qemumips ?= "7741c5b2f536b99815329849cca09799cdb82e62"
-SRCREV_machine:qemuppc ?= "4d933456709d664a55fdda85304c08567265ad4d"
-SRCREV_machine:qemuriscv64 ?= "4d933456709d664a55fdda85304c08567265ad4d"
-SRCREV_machine:qemuriscv32 ?= "4d933456709d664a55fdda85304c08567265ad4d"
-SRCREV_machine:qemux86 ?= "4d933456709d664a55fdda85304c08567265ad4d"
-SRCREV_machine:qemux86-64 ?= "4d933456709d664a55fdda85304c08567265ad4d"
-SRCREV_machine:qemumips64 ?= "4ced38bbd45f6cb623728bd755894928a719edac"
-SRCREV_machine ?= "4d933456709d664a55fdda85304c08567265ad4d"
-SRCREV_meta ?= "5eb0fa93f8490a962ff0c36c14d8def271d75128"
+SRCREV_machine:qemuarm ?= "446661f6a3b07535304497c1a51d9cab95f48f0b"
+SRCREV_machine:qemuarm64 ?= "65a9a22786a6710fc7b4edb7cfae80dd83f591f1"
+SRCREV_machine:qemumips ?= "98da147618fca3da29cf1c6ab9c53f24de2c587c"
+SRCREV_machine:qemuppc ?= "65a9a22786a6710fc7b4edb7cfae80dd83f591f1"
+SRCREV_machine:qemuriscv64 ?= "65a9a22786a6710fc7b4edb7cfae80dd83f591f1"
+SRCREV_machine:qemuriscv32 ?= "65a9a22786a6710fc7b4edb7cfae80dd83f591f1"
+SRCREV_machine:qemux86 ?= "65a9a22786a6710fc7b4edb7cfae80dd83f591f1"
+SRCREV_machine:qemux86-64 ?= "65a9a22786a6710fc7b4edb7cfae80dd83f591f1"
+SRCREV_machine:qemumips64 ?= "53842054198d851b5deb5810afaf126156efbb54"
+SRCREV_machine ?= "65a9a22786a6710fc7b4edb7cfae80dd83f591f1"
+SRCREV_meta ?= "350b544d077955b599b54ab364f6227d96a90455"
# 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 ?= "bf44eed7f2fc9af74eb72f4bc415bdd3d11c4bed"
+SRCREV_machine:class-devupstream ?= "d1105a680e66b0482bd18048534c58ecabb5c284"
PN:class-devupstream = "linux-yocto-upstream"
KBRANCH:class-devupstream = "v5.19/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.19;destsuffix=${KMETA}"
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
-LINUX_VERSION ?= "5.19.3"
+LINUX_VERSION ?= "5.19.9"
DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
DEPENDS += "openssl-native util-linux-native"
@@ -56,7 +56,7 @@ COMPATIBLE_MACHINE = "^(qemuarm|qemuarmv5|qemuarm64|qemux86|qemuppc|qemuppc64|qe
# Functionality flags
KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc"
KERNEL_FEATURES:append = " ${KERNEL_EXTRA_FEATURES}"
-KERNEL_FEATURES:append:qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc"
+KERNEL_FEATURES:append:qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc cfg/net/mdio.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 = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "", d)}"
diff --git a/poky/meta/recipes-kernel/lttng/lttng-platforms.inc b/poky/meta/recipes-kernel/lttng/lttng-platforms.inc
index 933c65d85d..900e36df82 100644
--- a/poky/meta/recipes-kernel/lttng/lttng-platforms.inc
+++ b/poky/meta/recipes-kernel/lttng/lttng-platforms.inc
@@ -15,3 +15,7 @@ LTTNGUST:arc = ""
COMPATIBLE_HOST:arc:pn-lttng-ust = "null"
+# Whether the platform supports lttng-tools
+# lttng-tools requires SYS_ppoll and SYS_pselect6 which are not supported on riscv32.
+# It's also turned off for riscv32 in meta-riscv. See https://github.com/riscv/meta-riscv/blob/master/conf/layer.conf
+COMPATIBLE_HOST:riscv32:pn-lttng-tools = "null"
diff --git a/poky/meta/recipes-kernel/perf/perf.bb b/poky/meta/recipes-kernel/perf/perf.bb
index 9f7c300a40..31bc04635d 100644
--- a/poky/meta/recipes-kernel/perf/perf.bb
+++ b/poky/meta/recipes-kernel/perf/perf.bb
@@ -145,6 +145,9 @@ do_install() {
# we are checking for this make target to be compatible with older perf versions
if ${@bb.utils.contains('PACKAGECONFIG', 'scripting', 'true', 'false', d)} && grep -q install-python_ext ${S}/tools/perf/Makefile*; then
oe_runmake DESTDIR=${D} install-python_ext
+ if [ -e ${D}${libdir}/python*/site-packages/perf-*/SOURCES.txt ]; then
+ sed -i -e 's#${WORKDIR}##g' ${D}${libdir}/python*/site-packages/perf-*/SOURCES.txt
+ fi
fi
}
@@ -245,6 +248,9 @@ do_configure:prepend () {
# change the Makefile line to remove everything before 'tools/perf'
sed -i -e "s%srcdir_SQ = \$(subst ','\\\'',\$(srcdir))%srcdir_SQ = \$(patsubst \%tools/perf,tools/perf,\$(subst ','\\\'',\$(srcdir)))%g" \
${S}/tools/perf/Makefile.config
+ # Avoid hardcoded path to python-native
+ sed -i -e 's#\(PYTHON_WORD := \)$(call shell-wordify,$(PYTHON))#\1 python3#g' \
+ ${S}/tools/perf/Makefile.config
fi
if [ -e "${S}/tools/perf/tests/Build" ]; then
# OUTPUT is the full path, we have python on the path so we remove it from the
diff --git a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_5.1.bb b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_5.1.1.bb
index bb507b4974..2306fe4a42 100644
--- a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_5.1.bb
+++ b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_5.1.1.bb
@@ -23,7 +23,7 @@ LIC_FILES_CHKSUM = "file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02"
SRC_URI = "https://www.ffmpeg.org/releases/${BP}.tar.xz"
-SRC_URI[sha256sum] = "55eb6aab5ee235550fa54a33eaf8bf1b4ec66c01453182b12f6a993d75698b03"
+SRC_URI[sha256sum] = "95bf3ff8c496511e71e958fb249e663c8c9c3de583c5bebc0f5a9745abbc0435"
# 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/flac/flac_1.3.4.bb b/poky/meta/recipes-multimedia/flac/flac_1.4.0.bb
index 012da0a0a0..360396380d 100644
--- a/poky/meta/recipes-multimedia/flac/flac_1.3.4.bb
+++ b/poky/meta/recipes-multimedia/flac/flac_1.4.0.bb
@@ -1,45 +1,43 @@
SUMMARY = "Free Lossless Audio Codec"
DESCRIPTION = "FLAC stands for Free Lossless Audio Codec, a lossless audio compression format."
HOMEPAGE = "https://xiph.org/flac/"
-BUGTRACKER = "http://sourceforge.net/p/flac/bugs/"
+BUGTRACKER = "https://github.com/xiph/flac/issues"
SECTION = "libs"
LICENSE = "GFDL-1.2 & GPL-2.0-or-later & LGPL-2.1-or-later & BSD-3-Clause"
LIC_FILES_CHKSUM = "file://COPYING.FDL;md5=ad1419ecc56e060eccf8184a87c4285f \
- file://src/Makefile.am;beginline=1;endline=17;md5=09501c864f89dfc7ead65553129817ca \
+ file://src/Makefile.am;beginline=1;endline=17;md5=146d2c8c2fd287545cc1bd81f31e8758 \
file://COPYING.GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
- file://src/flac/main.c;beginline=1;endline=18;md5=09777e2934947a36f13568d0beb81199 \
+ file://src/flac/main.c;beginline=1;endline=18;md5=893456854ce6bf14a1a7ea77266eebab \
file://COPYING.LGPL;md5=fbc093901857fcd118f065f900982c24 \
- file://src/plugin_common/all.h;beginline=1;endline=18;md5=f56cb4ba9a3bc9ec6102e8df03215271 \
- file://COPYING.Xiph;md5=b59c1b6d7fc0fb7965f821a3d36505e3 \
+ file://src/plugin_common/all.h;beginline=1;endline=18;md5=73c74192ce89ee6238d15a171e00c971 \
+ file://COPYING.Xiph;md5=3d6da238b5b57a0965d6730291119f65 \
file://include/FLAC/all.h;beginline=65;endline=70;md5=64474f2b22e9e77b28d8b8b25c983a48"
-DEPENDS = "libogg"
-SRC_URI = "http://downloads.xiph.org/releases/flac/${BP}.tar.xz \
-"
-
-SRC_URI[sha256sum] = "8ff0607e75a322dd7cd6ec48f4f225471404ae2730d0ea945127b1355155e737"
+SRC_URI = "http://downloads.xiph.org/releases/flac/${BP}.tar.xz"
+SRC_URI[sha256sum] = "af41c0733c93c237c3e52f64dd87e3b0d9af38259f1c7d11e8cbf583c48c2506"
CVE_PRODUCT = "libflac flac"
inherit autotools gettext
EXTRA_OECONF = "--disable-oggtest \
- --with-ogg-libraries=${STAGING_LIBDIR} \
- --with-ogg-includes=${STAGING_INCDIR} \
--disable-xmms-plugin \
--without-libiconv-prefix \
ac_cv_prog_NASM="" \
"
-EXTRA_OECONF += "${@bb.utils.contains("TUNE_FEATURES", "altivec", " --enable-altivec", " --disable-altivec", d)}"
-EXTRA_OECONF += "${@bb.utils.contains("TUNE_FEATURES", "vsx", " --enable-vsx", " --disable-vsx", d)}"
-EXTRA_OECONF += "${@bb.utils.contains("TUNE_FEATURES", "core2", " --enable-sse", "", d)}"
-EXTRA_OECONF += "${@bb.utils.contains("TUNE_FEATURES", "corei7", " --enable-sse", "", d)}"
+PACKAGECONFIG ??= " \
+ ${@bb.utils.filter("TUNE_FEATURES", "altivec vsx", d)} \
+ ${@bb.utils.contains_any("TUNE_FEATURES", "core2 corei7", "sse", "", d)} \
+ ogg \
+"
+PACKAGECONFIG[sse] = "--enable-sse,--disable-sse"
+PACKAGECONFIG[altivec] = "--enable-altivec,--disable-altivec"
+PACKAGECONFIG[vsx] = "--enable-vsx,--disable-vsx"
+PACKAGECONFIG[avx] = "--enable-avx,--disable-avx"
+PACKAGECONFIG[ogg] = "--enable-ogg --with-ogg-libraries=${STAGING_LIBDIR} --with-ogg-includes=${STAGING_INCDIR},--disable-ogg,libogg"
-PACKAGES += "libflac libflac++ liboggflac liboggflac++"
+PACKAGES += "libflac libflac++"
FILES:${PN} = "${bindir}/*"
FILES:libflac = "${libdir}/libFLAC.so.*"
FILES:libflac++ = "${libdir}/libFLAC++.so.*"
-FILES:liboggflac = "${libdir}/libOggFLAC.so.*"
-FILES:liboggflac++ = "${libdir}/libOggFLAC++.so.*"
-
diff --git a/poky/meta/recipes-multimedia/libpng/libpng_1.6.37.bb b/poky/meta/recipes-multimedia/libpng/libpng_1.6.38.bb
index 61e3d92e95..dc627203ef 100644
--- a/poky/meta/recipes-multimedia/libpng/libpng_1.6.37.bb
+++ b/poky/meta/recipes-multimedia/libpng/libpng_1.6.38.bb
@@ -5,14 +5,13 @@ library for use in applications that read, create, and manipulate PNG \
HOMEPAGE = "http://www.libpng.org/"
SECTION = "libs"
LICENSE = "Libpng"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=b0085051bf265bac2bfc38bc89f50000"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=5c900cc124ba35a274073b5de7639b13"
DEPENDS = "zlib"
LIBV = "16"
SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}${LIBV}/${BP}.tar.xz"
-SRC_URI[md5sum] = "015e8e15db1eecde5f2eb9eb5b6e59e9"
-SRC_URI[sha256sum] = "505e70834d35383537b6491e7ae8641f1a4bed1876dbfe361201fc80868d88ca"
+SRC_URI[sha256sum] = "b3683e8b8111ebf6f1ac004ebb6b0c975cd310ec469d98364388e9cedbfa68be"
MIRRORS += "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}${LIBV}/ ${SOURCEFORGE_MIRROR}/${BPN}/${BPN}${LIBV}/older-releases/"
diff --git a/poky/meta/recipes-multimedia/libsamplerate/libsamplerate0_0.2.2.bb b/poky/meta/recipes-multimedia/libsamplerate/libsamplerate0_0.2.2.bb
index ed2b6437dd..29d48fd333 100644
--- a/poky/meta/recipes-multimedia/libsamplerate/libsamplerate0_0.2.2.bb
+++ b/poky/meta/recipes-multimedia/libsamplerate/libsamplerate0_0.2.2.bb
@@ -7,18 +7,18 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=336d6faf40fb600bafb0061f4052f1f4 \
file://src/samplerate.c;beginline=1;endline=7;md5=7a4238289dc36bfb70968ccaa5bd0d4f"
DEPENDS = "libsndfile1"
-SRC_URI = "https://github.com/libsndfile/libsamplerate/releases/download/${PV}/libsamplerate-${PV}.tar.xz \
+SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/libsamplerate-${PV}.tar.xz \
"
SRC_URI[sha256sum] = "3258da280511d24b49d6b08615bbe824d0cacc9842b0e4caf11c52cf2b043893"
CVE_PRODUCT = "libsamplerate"
-UPSTREAM_CHECK_URI = "https://github.com/libsndfile/libsamplerate/releases"
+GITHUB_BASE_URI = "https://github.com/libsndfile/libsamplerate/releases"
S = "${WORKDIR}/libsamplerate-${PV}"
-inherit autotools pkgconfig
+inherit autotools pkgconfig github-releases
# FFTW and ALSA are only used in tests and examples, so they don't affect
# normal builds. It should be safe to ignore these, but explicitly disabling
diff --git a/poky/meta/recipes-multimedia/libsndfile/libsndfile1_1.1.0.bb b/poky/meta/recipes-multimedia/libsndfile/libsndfile1_1.1.0.bb
index 70626b3c16..1f1a40160d 100644
--- a/poky/meta/recipes-multimedia/libsndfile/libsndfile1_1.1.0.bb
+++ b/poky/meta/recipes-multimedia/libsndfile/libsndfile1_1.1.0.bb
@@ -8,10 +8,10 @@ DEPENDS = "flac libogg libvorbis"
SECTION = "libs/multimedia"
LICENSE = "LGPL-2.1-only"
-SRC_URI = "https://github.com/libsndfile/libsndfile/releases/download/${PV}/libsndfile-${PV}.tar.xz \
+SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/libsndfile-${PV}.tar.xz \
file://noopus.patch \
"
-UPSTREAM_CHECK_URI = "https://github.com/libsndfile/libsndfile/releases/"
+GITHUB_BASE_URI = "https://github.com/libsndfile/libsndfile/releases/"
SRC_URI[sha256sum] = "0f98e101c0f7c850a71225fb5feaf33b106227b3d331333ddc9bacee190bcf41"
@@ -25,7 +25,7 @@ PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'alsa', d)}"
PACKAGECONFIG[alsa] = "--enable-alsa,--disable-alsa,alsa-lib"
PACKAGECONFIG[regtest] = "--enable-sqlite,--disable-sqlite,sqlite3"
-inherit autotools lib_package pkgconfig multilib_header
+inherit autotools lib_package pkgconfig multilib_header github-releases
do_install:append() {
oe_multilib_header sndfile.h
diff --git a/poky/meta/recipes-multimedia/libtiff/files/CVE-2022-2953.patch b/poky/meta/recipes-multimedia/libtiff/files/CVE-2022-2953.patch
new file mode 100644
index 0000000000..98020ff92f
--- /dev/null
+++ b/poky/meta/recipes-multimedia/libtiff/files/CVE-2022-2953.patch
@@ -0,0 +1,86 @@
+CVE: CVE-2022-2053
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+From 8fe3735942ea1d90d8cef843b55b3efe8ab6feaf Mon Sep 17 00:00:00 2001
+From: Su_Laus <sulau@freenet.de>
+Date: Mon, 15 Aug 2022 22:11:03 +0200
+Subject: [PATCH] =?UTF-8?q?According=20to=20Richard=20Nolde=20https://gitl?=
+ =?UTF-8?q?ab.com/libtiff/libtiff/-/issues/401#note=5F877637400=20the=20ti?=
+ =?UTF-8?q?ffcrop=20option=20=E2=80=9E-S=E2=80=9C=20is=20also=20mutually?=
+ =?UTF-8?q?=20exclusive=20to=20the=20other=20crop=20options=20(-X|-Y),=20-?=
+ =?UTF-8?q?Z=20and=20-z.?=
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This is now checked and ends tiffcrop if those arguments are not mutually exclusive.
+
+This MR will fix the following tiffcrop issues: #349, #414, #422, #423, #424
+---
+ tools/tiffcrop.c | 31 ++++++++++++++++---------------
+ 1 file changed, 16 insertions(+), 15 deletions(-)
+
+diff --git a/tools/tiffcrop.c b/tools/tiffcrop.c
+index 90286a5e..c3b758ec 100644
+--- a/tools/tiffcrop.c
++++ b/tools/tiffcrop.c
+@@ -173,12 +173,12 @@ static char tiffcrop_rev_date[] = "02-09-2022";
+ #define ROTATECW_270 32
+ #define ROTATE_ANY (ROTATECW_90 | ROTATECW_180 | ROTATECW_270)
+
+-#define CROP_NONE 0
+-#define CROP_MARGINS 1
+-#define CROP_WIDTH 2
+-#define CROP_LENGTH 4
+-#define CROP_ZONES 8
+-#define CROP_REGIONS 16
++#define CROP_NONE 0 /* "-S" -> Page_MODE_ROWSCOLS and page->rows/->cols != 0 */
++#define CROP_MARGINS 1 /* "-m" */
++#define CROP_WIDTH 2 /* "-X" */
++#define CROP_LENGTH 4 /* "-Y" */
++#define CROP_ZONES 8 /* "-Z" */
++#define CROP_REGIONS 16 /* "-z" */
+ #define CROP_ROTATE 32
+ #define CROP_MIRROR 64
+ #define CROP_INVERT 128
+@@ -316,7 +316,7 @@ struct crop_mask {
+ #define PAGE_MODE_RESOLUTION 1
+ #define PAGE_MODE_PAPERSIZE 2
+ #define PAGE_MODE_MARGINS 4
+-#define PAGE_MODE_ROWSCOLS 8
++#define PAGE_MODE_ROWSCOLS 8 /* for -S option */
+
+ #define INVERT_DATA_ONLY 10
+ #define INVERT_DATA_AND_TAG 11
+@@ -781,7 +781,7 @@ static const char usage_info[] =
+ " The four debug/dump options are independent, though it makes little sense to\n"
+ " specify a dump file without specifying a detail level.\n"
+ "\n"
+-"Note: The (-X|-Y), -Z and -z options are mutually exclusive.\n"
++"Note: The (-X|-Y), -Z, -z and -S options are mutually exclusive.\n"
+ " In no case should the options be applied to a given selection successively.\n"
+ "\n"
+ ;
+@@ -2131,13 +2131,14 @@ void process_command_opts (int argc, char *argv[], char *mp, char *mode, uint32
+ /*NOTREACHED*/
+ }
+ }
+- /*-- Check for not allowed combinations (e.g. -X, -Y and -Z and -z are mutually exclusive) --*/
+- char XY, Z, R;
++ /*-- Check for not allowed combinations (e.g. -X, -Y and -Z, -z and -S are mutually exclusive) --*/
++ char XY, Z, R, S;
+ XY = ((crop_data->crop_mode & CROP_WIDTH) || (crop_data->crop_mode & CROP_LENGTH));
+ Z = (crop_data->crop_mode & CROP_ZONES);
+ R = (crop_data->crop_mode & CROP_REGIONS);
+- if ((XY && Z) || (XY && R) || (Z && R)) {
+- TIFFError("tiffcrop input error", "The crop options(-X|-Y), -Z and -z are mutually exclusive.->Exit");
++ S = (page->mode & PAGE_MODE_ROWSCOLS);
++ if ((XY && Z) || (XY && R) || (XY && S) || (Z && R) || (Z && S) || (R && S)) {
++ TIFFError("tiffcrop input error", "The crop options(-X|-Y), -Z, -z and -S are mutually exclusive.->Exit");
+ exit(EXIT_FAILURE);
+ }
+ } /* end process_command_opts */
+--
+2.34.1
+
diff --git a/poky/meta/recipes-multimedia/libtiff/tiff_4.4.0.bb b/poky/meta/recipes-multimedia/libtiff/tiff_4.4.0.bb
index e30df0b3e9..caf6f60479 100644
--- a/poky/meta/recipes-multimedia/libtiff/tiff_4.4.0.bb
+++ b/poky/meta/recipes-multimedia/libtiff/tiff_4.4.0.bb
@@ -11,6 +11,7 @@ CVE_PRODUCT = "libtiff"
SRC_URI = "http://download.osgeo.org/libtiff/tiff-${PV}.tar.gz \
file://0001-fix-the-FPE-in-tiffcrop-415-427-and-428.patch \
file://CVE-2022-34526.patch \
+ file://CVE-2022-2953.patch \
"
SRC_URI[sha256sum] = "917223b37538959aca3b790d2d73aa6e626b688e02dcda272aec24c2f498abed"
diff --git a/poky/meta/recipes-sato/webkit/webkitgtk/0d3344e17d258106617b0e6d783d073b188a2548.patch b/poky/meta/recipes-sato/webkit/webkitgtk/0d3344e17d258106617b0e6d783d073b188a2548.patch
new file mode 100644
index 0000000000..32f92f7ff5
--- /dev/null
+++ b/poky/meta/recipes-sato/webkit/webkitgtk/0d3344e17d258106617b0e6d783d073b188a2548.patch
@@ -0,0 +1,296 @@
+From 0d3344e17d258106617b0e6d783d073b188a2548 Mon Sep 17 00:00:00 2001
+From: Adrian Perez de Castro <aperez@igalia.com>
+Date: Thu, 2 Jun 2022 11:19:06 +0300
+Subject: [PATCH] [ARM][NEON] FELightningNEON.cpp fails to build, NEON fast
+ path seems unused https://bugs.webkit.org/show_bug.cgi?id=241182
+
+Reviewed by NOBODY (OOPS!).
+
+Move the NEON fast path for the SVG lighting filter effects into
+FELightingSoftwareApplier, and arrange to actually use them by
+forwarding calls to applyPlatformGeneric() into applyPlatformNeon().
+
+Some changes were needed to adapt platformApplyNeon() to the current
+state of filters after r286140. This was not detected because the code
+bitrotted due to it being guarded with CPU(ARM_TRADITIONAL), which does
+not get used much these days: CPU(ARM_THUMB2) is more common. It should
+be possible to use the NEON fast paths also in Thumb mode, but that is
+left for a follow-up fix.
+
+* Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp:
+(WebCore::FELightingSoftwareApplier::platformApplyNeonWorker):
+(WebCore::FELightingSoftwareApplier::getPowerCoefficients):
+(WebCore::FELighting::platformApplyNeonWorker): Deleted.
+(WebCore::FELighting::getPowerCoefficients): Deleted.
+* Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h:
+(WebCore::FELightingSoftwareApplier::applyPlatformNeon):
+(WebCore::FELighting::platformApplyNeon): Deleted.
+* Source/WebCore/platform/graphics/filters/DistantLightSource.h:
+* Source/WebCore/platform/graphics/filters/FELighting.h:
+* Source/WebCore/platform/graphics/filters/PointLightSource.h:
+* Source/WebCore/platform/graphics/filters/SpotLightSource.h:
+* Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h:
+---
+Upstream-Status: Submitted [https://github.com/WebKit/WebKit/pull/1233]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+ .../cpu/arm/filters/FELightingNEON.cpp | 4 +-
+ .../graphics/cpu/arm/filters/FELightingNEON.h | 54 +++++++++----------
+ .../graphics/filters/DistantLightSource.h | 4 ++
+ .../platform/graphics/filters/FELighting.h | 7 ---
+ .../graphics/filters/PointLightSource.h | 4 ++
+ .../graphics/filters/SpotLightSource.h | 4 ++
+ .../software/FELightingSoftwareApplier.h | 16 ++++++
+ 7 files changed, 57 insertions(+), 36 deletions(-)
+
+--- a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
++++ b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
+@@ -49,7 +49,7 @@ short* feLightingConstantsForNeon()
+ return s_FELightingConstantsForNeon;
+ }
+
+-void FELighting::platformApplyNeonWorker(FELightingPaintingDataForNeon* parameters)
++void FELightingSoftwareApplier::platformApplyNeonWorker(FELightingPaintingDataForNeon* parameters)
+ {
+ neonDrawLighting(parameters);
+ }
+@@ -464,7 +464,7 @@ TOSTRING(neonDrawLighting) ":" NL
+ "b .lightStrengthCalculated" NL
+ ); // NOLINT
+
+-int FELighting::getPowerCoefficients(float exponent)
++int FELightingSoftwareApplier::getPowerCoefficients(float exponent)
+ {
+ // Calling a powf function from the assembly code would require to save
+ // and reload a lot of NEON registers. Since the base is in range [0..1]
+--- a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h
++++ b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h
+@@ -24,14 +24,15 @@
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+-#ifndef FELightingNEON_h
+-#define FELightingNEON_h
++#pragma once
+
+ #if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC_COMPATIBLE)
+
+-#include "FELighting.h"
++#include "FELightingSoftwareApplier.h"
++#include "ImageBuffer.h"
+ #include "PointLightSource.h"
+ #include "SpotLightSource.h"
++#include <wtf/ObjectIdentifier.h>
+ #include <wtf/ParallelJobs.h>
+
+ namespace WebCore {
+@@ -93,14 +94,14 @@ extern "C" {
+ void neonDrawLighting(FELightingPaintingDataForNeon*);
+ }
+
+-inline void FELighting::platformApplyNeon(const LightingData& data, const LightSource::PaintingData& paintingData)
++inline void FELightingSoftwareApplier::applyPlatformNeon(const FELightingSoftwareApplier::LightingData& data, const LightSource::PaintingData& paintingData)
+ {
+- alignas(16) FELightingFloatArgumentsForNeon floatArguments;
+- FELightingPaintingDataForNeon neonData = {
++ WebCore::FELightingFloatArgumentsForNeon alignas(16) floatArguments;
++ WebCore::FELightingPaintingDataForNeon neonData = {
+ data.pixels->data(),
+ 1,
+- data.widthDecreasedByOne - 1,
+- data.heightDecreasedByOne - 1,
++ data.width - 2,
++ data.height - 2,
+ 0,
+ 0,
+ 0,
+@@ -111,23 +112,23 @@ inline void FELighting::platformApplyNeo
+ // Set light source arguments.
+ floatArguments.constOne = 1;
+
+- auto color = m_lightingColor.toColorTypeLossy<SRGBA<uint8_t>>().resolved();
++ auto color = data.lightingColor.toColorTypeLossy<SRGBA<uint8_t>>().resolved();
+
+ floatArguments.colorRed = color.red;
+ floatArguments.colorGreen = color.green;
+ floatArguments.colorBlue = color.blue;
+ floatArguments.padding4 = 0;
+
+- if (m_lightSource->type() == LS_POINT) {
++ if (data.lightSource->type() == LS_POINT) {
+ neonData.flags |= FLAG_POINT_LIGHT;
+- PointLightSource& pointLightSource = static_cast<PointLightSource&>(m_lightSource.get());
++ const auto& pointLightSource = *static_cast<const PointLightSource*>(data.lightSource);
+ floatArguments.lightX = pointLightSource.position().x();
+ floatArguments.lightY = pointLightSource.position().y();
+ floatArguments.lightZ = pointLightSource.position().z();
+ floatArguments.padding2 = 0;
+- } else if (m_lightSource->type() == LS_SPOT) {
++ } else if (data.lightSource->type() == LS_SPOT) {
+ neonData.flags |= FLAG_SPOT_LIGHT;
+- SpotLightSource& spotLightSource = static_cast<SpotLightSource&>(m_lightSource.get());
++ const auto& spotLightSource = *static_cast<const SpotLightSource*>(data.lightSource);
+ floatArguments.lightX = spotLightSource.position().x();
+ floatArguments.lightY = spotLightSource.position().y();
+ floatArguments.lightZ = spotLightSource.position().z();
+@@ -145,7 +146,7 @@ inline void FELighting::platformApplyNeo
+ if (spotLightSource.specularExponent() == 1)
+ neonData.flags |= FLAG_CONE_EXPONENT_IS_1;
+ } else {
+- ASSERT(m_lightSource->type() == LS_DISTANT);
++ ASSERT(data.lightSource->type() == LS_DISTANT);
+ floatArguments.lightX = paintingData.initialLightingData.lightVector.x();
+ floatArguments.lightY = paintingData.initialLightingData.lightVector.y();
+ floatArguments.lightZ = paintingData.initialLightingData.lightVector.z();
+@@ -155,38 +156,39 @@ inline void FELighting::platformApplyNeo
+ // Set lighting arguments.
+ floatArguments.surfaceScale = data.surfaceScale;
+ floatArguments.minusSurfaceScaleDividedByFour = -data.surfaceScale / 4;
+- if (m_lightingType == FELighting::DiffuseLighting)
+- floatArguments.diffuseConstant = m_diffuseConstant;
++ if (data.filterType == FilterEffect::Type::FEDiffuseLighting)
++ floatArguments.diffuseConstant = data.diffuseConstant;
+ else {
+ neonData.flags |= FLAG_SPECULAR_LIGHT;
+- floatArguments.diffuseConstant = m_specularConstant;
+- neonData.specularExponent = getPowerCoefficients(m_specularExponent);
+- if (m_specularExponent == 1)
++ floatArguments.diffuseConstant = data.specularConstant;
++ neonData.specularExponent = getPowerCoefficients(data.specularExponent);
++ if (data.specularExponent == 1)
+ neonData.flags |= FLAG_SPECULAR_EXPONENT_IS_1;
+ }
+ if (floatArguments.diffuseConstant == 1)
+ neonData.flags |= FLAG_DIFFUSE_CONST_IS_1;
+
+- int optimalThreadNumber = ((data.widthDecreasedByOne - 1) * (data.heightDecreasedByOne - 1)) / s_minimalRectDimension;
++ static constexpr int minimalRectDimension = 100 * 100; // Empirical data limit for parallel jobs
++ int optimalThreadNumber = ((data.width - 2) * (data.height - 2)) / minimalRectDimension;
+ if (optimalThreadNumber > 1) {
+ // Initialize parallel jobs
+- ParallelJobs<FELightingPaintingDataForNeon> parallelJobs(&WebCore::FELighting::platformApplyNeonWorker, optimalThreadNumber);
++ ParallelJobs<FELightingPaintingDataForNeon> parallelJobs(&FELightingSoftwareApplier::platformApplyNeonWorker, optimalThreadNumber);
+
+ // Fill the parameter array
+ int job = parallelJobs.numberOfJobs();
+ if (job > 1) {
+ int yStart = 1;
+- int yStep = (data.heightDecreasedByOne - 1) / job;
++ int yStep = (data.height - 2) / job;
+ for (--job; job >= 0; --job) {
+ FELightingPaintingDataForNeon& params = parallelJobs.parameter(job);
+ params = neonData;
+ params.yStart = yStart;
+- params.pixels += (yStart - 1) * (data.widthDecreasedByOne + 1) * 4;
++ params.pixels += (yStart - 1) * data.width * 4;
+ if (job > 0) {
+ params.absoluteHeight = yStep;
+ yStart += yStep;
+ } else
+- params.absoluteHeight = data.heightDecreasedByOne - yStart;
++ params.absoluteHeight = (data.height - 1) - yStart;
+ }
+ parallelJobs.execute();
+ return;
+@@ -199,5 +201,3 @@ inline void FELighting::platformApplyNeo
+ } // namespace WebCore
+
+ #endif // CPU(ARM_NEON) && COMPILER(GCC_COMPATIBLE)
+-
+-#endif // FELightingNEON_h
+--- a/Source/WebCore/platform/graphics/filters/DistantLightSource.h
++++ b/Source/WebCore/platform/graphics/filters/DistantLightSource.h
+@@ -25,6 +25,10 @@
+ #include "LightSource.h"
+ #include <wtf/Ref.h>
+
++namespace WTF {
++class TextStream;
++} // namespace WTF
++
+ namespace WebCore {
+
+ class DistantLightSource : public LightSource {
+--- a/Source/WebCore/platform/graphics/filters/FELighting.h
++++ b/Source/WebCore/platform/graphics/filters/FELighting.h
+@@ -35,8 +35,6 @@
+
+ namespace WebCore {
+
+-struct FELightingPaintingDataForNeon;
+-
+ class FELighting : public FilterEffect {
+ public:
+ const Color& lightingColor() const { return m_lightingColor; }
+@@ -67,11 +65,6 @@ protected:
+
+ std::unique_ptr<FilterEffectApplier> createSoftwareApplier() const override;
+
+-#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC_COMPATIBLE)
+- static int getPowerCoefficients(float exponent);
+- inline void platformApplyNeon(const LightingData&, const LightSource::PaintingData&);
+-#endif
+-
+ Color m_lightingColor;
+ float m_surfaceScale;
+ float m_diffuseConstant;
+--- a/Source/WebCore/platform/graphics/filters/PointLightSource.h
++++ b/Source/WebCore/platform/graphics/filters/PointLightSource.h
+@@ -26,6 +26,10 @@
+ #include "LightSource.h"
+ #include <wtf/Ref.h>
+
++namespace WTF {
++class TextStream;
++} // namespace WTF
++
+ namespace WebCore {
+
+ class PointLightSource : public LightSource {
+--- a/Source/WebCore/platform/graphics/filters/SpotLightSource.h
++++ b/Source/WebCore/platform/graphics/filters/SpotLightSource.h
+@@ -26,6 +26,10 @@
+ #include "LightSource.h"
+ #include <wtf/Ref.h>
+
++namespace WTF {
++class TextStream;
++} // namespace WTF
++
+ namespace WebCore {
+
+ class SpotLightSource : public LightSource {
+--- a/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h
++++ b/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h
+@@ -36,6 +36,7 @@
+ namespace WebCore {
+
+ class FELighting;
++struct FELightingPaintingDataForNeon;
+
+ class FELightingSoftwareApplier final : public FilterEffectConcreteApplier<FELighting> {
+ WTF_MAKE_FAST_ALLOCATED;
+@@ -132,8 +133,23 @@ private:
+
+ static void applyPlatformGenericPaint(const LightingData&, const LightSource::PaintingData&, int startY, int endY);
+ static void applyPlatformGenericWorker(ApplyParameters*);
++
++#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC_COMPATIBLE)
++ static int getPowerCoefficients(float exponent);
++ static void platformApplyNeonWorker(FELightingPaintingDataForNeon*);
++ inline static void applyPlatformNeon(const LightingData&, const LightSource::PaintingData&);
++
++ inline static void applyPlatformGeneric(const LightingData& data, const LightSource::PaintingData& paintingData)
++ {
++ applyPlatformNeon(data, paintingData);
++ }
++#else
+ static void applyPlatformGeneric(const LightingData&, const LightSource::PaintingData&);
++#endif
++
+ static void applyPlatform(const LightingData&);
+ };
+
+ } // namespace WebCore
++
++#include "FELightingNEON.h"
diff --git a/poky/meta/recipes-sato/webkit/webkitgtk/fix-gstreamer-include-paths.patch b/poky/meta/recipes-sato/webkit/webkitgtk/fix-gstreamer-include-paths.patch
new file mode 100644
index 0000000000..2c6be87902
--- /dev/null
+++ b/poky/meta/recipes-sato/webkit/webkitgtk/fix-gstreamer-include-paths.patch
@@ -0,0 +1,51 @@
+From 25efd1478b48b5406fdab3b7b9c1f7e0ef95a7ed Mon Sep 17 00:00:00 2001
+From: Pablo Saavedra <psaavedra@igalia.com>
+Date: Mon, 27 Jun 2022 16:56:04 -0700
+Subject: [PATCH] Fix include gstreamer path on cross compiler toolchains
+ https://bugs.webkit.org/show_bug.cgi?id=241483
+
+Reviewed by Adrian Perez de Castro.
+
+Set the include paths for the gstreamer components to the full path
+using the find_path(). This function relies in CMAKE_FIND_ROOT_PATH to
+find the right place where the includes they are. This fixes possible
+warnings/errors on cross toolchains using -Wpoison-system-directories
+and -Werror=poison-system-directories.
+
+* Source/cmake/FindGStreamer.cmake:
+
+Canonical link: https://commits.webkit.org/251895@main
+
+Upstream-Status: Backport [2.37.1 https://github.com/WebKit/WebKit/commit/25efd1478b48b5406fdab3b7b9c1f7e0ef95a7ed]
+---
+ Source/cmake/FindGStreamer.cmake | 14 +++++++++++---
+ 1 file changed, 11 insertions(+), 3 deletions(-)
+
+diff --git a/Source/cmake/FindGStreamer.cmake b/Source/cmake/FindGStreamer.cmake
+index 3216f6974b53..b65a11f30871 100644
+--- a/Source/cmake/FindGStreamer.cmake
++++ b/Source/cmake/FindGStreamer.cmake
+@@ -75,12 +75,20 @@ macro(FIND_GSTREAMER_COMPONENT _component_prefix _pkgconfig_name _library)
+ # ${includedir}/gstreamer-1.0 which remains correct. The issue here is that
+ # we don't rely on the `Cflags`, cmake fails to generate a proper
+ # `.._INCLUDE_DIRS` variable in this case. So we need to do it here...
++
++ # Populate the list initially from the _INCLUDE_DIRS result variable.
++ set(${_component_prefix}_INCLUDE_DIRS ${PC_${_component_prefix}_INCLUDE_DIRS})
++
+ set(_include_dir "${PC_${_component_prefix}_INCLUDEDIR}")
+ string(REGEX MATCH "(.*)/gstreamer-1.0" _dummy "${_include_dir}")
++
+ if ("${CMAKE_MATCH_1}" STREQUAL "")
+- set(${_component_prefix}_INCLUDE_DIRS "${_include_dir}/gstreamer-1.0;${PC_${_component_prefix}_INCLUDE_DIRS}")
+- else ()
+- set(${_component_prefix}_INCLUDE_DIRS "${PC_${_component_prefix}_INCLUDE_DIRS}")
++ find_path(${_component_prefix}_RESOLVED_INCLUDEDIR NAMES "${_include_dir}/gstreamer-1.0")
++ # Only add the resolved path from `_INCLUDEDIR` if found.
++ if (${_component_prefix}_RESOLVED_INCLUDEDIR)
++ list(APPEND ${_component_prefix}_INCLUDE_DIRS
++ "${${_component_prefix}_RESOLVED_INCLUDEDIR}")
++ endif ()
+ endif ()
+
+ find_library(${_component_prefix}_LIBRARIES
diff --git a/poky/meta/recipes-sato/webkit/webkitgtk_2.36.6.bb b/poky/meta/recipes-sato/webkit/webkitgtk_2.36.7.bb
index 37b977f9ba..76b119c9c7 100644
--- a/poky/meta/recipes-sato/webkit/webkitgtk_2.36.6.bb
+++ b/poky/meta/recipes-sato/webkit/webkitgtk_2.36.7.bb
@@ -15,9 +15,10 @@ 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://fix-gstreamer-include-paths.patch \
+ file://0d3344e17d258106617b0e6d783d073b188a2548.patch \
"
-
-SRC_URI[sha256sum] = "1193bc821946336776f0dfa5e0dca5651f1e57157eda12da4721d2441f24a61a"
+SRC_URI[sha256sum] = "0c260cf2b32f0481d017670dfed1b61e554967cd067195606c9f9eb5fe731743"
inherit cmake pkgconfig gobject-introspection perlnative features_check upstream-version-is-even gtk-doc
diff --git a/poky/meta/recipes-support/bash-completion/bash-completion_2.11.bb b/poky/meta/recipes-support/bash-completion/bash-completion_2.11.bb
index d981dd0c3a..19bc81619f 100644
--- a/poky/meta/recipes-support/bash-completion/bash-completion_2.11.bb
+++ b/poky/meta/recipes-support/bash-completion/bash-completion_2.11.bb
@@ -12,16 +12,15 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
SECTION = "console/utils"
-SRC_URI = "https://github.com/scop/bash-completion/releases/download/${PV}/${BPN}-${PV}.tar.xz"
+SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/${BPN}-${PV}.tar.xz"
SRC_URI[md5sum] = "2514c6772d0de6254758b98c53f91861"
SRC_URI[sha256sum] = "73a8894bad94dee83ab468fa09f628daffd567e8bef1a24277f1e9a0daf911ac"
-UPSTREAM_CHECK_REGEX = "bash-completion-(?P<pver>(?!2008).+)\.tar"
-UPSTREAM_CHECK_URI = "https://github.com/scop/bash-completion/releases"
+GITHUB_BASE_URI = "https://github.com/scop/bash-completion/releases"
PARALLEL_MAKE = ""
-inherit autotools
+inherit autotools github-releases
do_install:append() {
# compatdir
diff --git a/poky/meta/recipes-support/boost/boost.inc b/poky/meta/recipes-support/boost/boost.inc
index 402f1592cf..4263e645de 100644
--- a/poky/meta/recipes-support/boost/boost.inc
+++ b/poky/meta/recipes-support/boost/boost.inc
@@ -151,6 +151,7 @@ BOOST_PARALLEL_MAKE = "${@oe.utils.parallel_make_argument(d, '-j%d')}"
BJAM_OPTS = '${BOOST_PARALLEL_MAKE} -d+2 -q \
${BJAM_TOOLS} \
-sBOOST_BUILD_USER_CONFIG=${WORKDIR}/user-config.jam \
+ -sICU_PATH=${STAGING_EXECPREFIXDIR} \
--build-dir=${B} \
--disable-icu \
${BJAM_EXTRA}'
diff --git a/poky/meta/recipes-support/curl/curl_7.85.0.bb b/poky/meta/recipes-support/curl/curl_7.85.0.bb
index 3b55830415..ad6a5175bc 100644
--- a/poky/meta/recipes-support/curl/curl_7.85.0.bb
+++ b/poky/meta/recipes-support/curl/curl_7.85.0.bb
@@ -100,7 +100,8 @@ do_install_ptest() {
cp -rf ${D}${bindir}/curl-config ${D}${PTEST_PATH}
}
-RDEPENDS:${PN}-ptest += "bash perl-modules"
+RDEPENDS:${PN}-ptest += "bash perl-modules perl-module-time-hires perl-module-digest-md5 \
+ perl-module-digest perl-module-ipc-open2"
PACKAGES =+ "lib${BPN}"
diff --git a/poky/meta/recipes-support/diffoscope/diffoscope_220.bb b/poky/meta/recipes-support/diffoscope/diffoscope_221.bb
index dc556477fa..c801200d7c 100644
--- a/poky/meta/recipes-support/diffoscope/diffoscope_220.bb
+++ b/poky/meta/recipes-support/diffoscope/diffoscope_221.bb
@@ -12,7 +12,7 @@ PYPI_PACKAGE = "diffoscope"
inherit pypi setuptools3
-SRC_URI[sha256sum] = "7873e13ac8b11b634ee3490b70b056c6a6bae9cfb794d6ba7cb43e7797b2a829"
+SRC_URI[sha256sum] = "7b1724e9b1e5ac6597cac07d0acd2661db1bcf0d6a9b2e87be21b5e3806be9f8"
RDEPENDS:${PN} += "binutils vim squashfs-tools python3-libarchive-c python3-magic python3-rpm"
diff --git a/poky/meta/recipes-support/enchant/enchant2_2.3.3.bb b/poky/meta/recipes-support/enchant/enchant2_2.3.3.bb
index 96d56c2ea4..c892f570c4 100644
--- a/poky/meta/recipes-support/enchant/enchant2_2.3.3.bb
+++ b/poky/meta/recipes-support/enchant/enchant2_2.3.3.bb
@@ -9,12 +9,12 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c"
DEPENDS = "glib-2.0"
-inherit autotools pkgconfig
+inherit autotools pkgconfig github-releases
-SRC_URI = "https://github.com/AbiWord/enchant/releases/download/v${PV}/enchant-${PV}.tar.gz"
+SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/enchant-${PV}.tar.gz"
SRC_URI[sha256sum] = "3da12103f11cf49c3cf2fd2ce3017575c5321a489e5b9bfa81dd91ec413f3891"
-UPSTREAM_CHECK_URI = "https://github.com/AbiWord/enchant/releases"
+GITHUB_BASE_URI = "https://github.com/AbiWord/enchant/releases"
S = "${WORKDIR}/enchant-${PV}"
diff --git a/poky/meta/recipes-support/fribidi/fribidi_1.0.12.bb b/poky/meta/recipes-support/fribidi/fribidi_1.0.12.bb
index b29c47822f..9e46d958e9 100644
--- a/poky/meta/recipes-support/fribidi/fribidi_1.0.12.bb
+++ b/poky/meta/recipes-support/fribidi/fribidi_1.0.12.bb
@@ -9,13 +9,11 @@ BUGTRACKER = "https://github.com/fribidi/fribidi/issues"
LICENSE = "LGPL-2.1-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=a916467b91076e631dd8edb7424769c7"
-SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/v${PV}/${BP}.tar.xz \
+SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BP}.tar.xz \
"
SRC_URI[sha256sum] = "0cd233f97fc8c67bb3ac27ce8440def5d3ffacf516765b91c2cc654498293495"
-UPSTREAM_CHECK_URI = "https://github.com/${BPN}/${BPN}/releases"
-
-inherit meson lib_package pkgconfig
+inherit meson lib_package pkgconfig github-releases
CVE_PRODUCT = "gnu_fribidi fribidi"
diff --git a/poky/meta/recipes-support/icu/icu_71.1.bb b/poky/meta/recipes-support/icu/icu_71.1.bb
index b39633c203..df999dce3b 100644
--- a/poky/meta/recipes-support/icu/icu_71.1.bb
+++ b/poky/meta/recipes-support/icu/icu_71.1.bb
@@ -17,7 +17,7 @@ STAGING_ICU_DIR_NATIVE = "${STAGING_DATADIR_NATIVE}/${BPN}/${PV}"
ICU_MAJOR_VER = "${@d.getVar('PV').split('.')[0]}"
-inherit autotools pkgconfig
+inherit autotools pkgconfig github-releases
# ICU needs the native build directory as an argument to its --with-cross-build option when
# cross-compiling. Taken the situation that different builds may share a common sstate-cache
@@ -96,8 +96,8 @@ ICU_FOLDER = "${@icu_download_folder(d)}"
ARM_INSTRUCTION_SET:armv4 = "arm"
ARM_INSTRUCTION_SET:armv5 = "arm"
-BASE_SRC_URI = "https://github.com/unicode-org/icu/releases/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-src.tgz"
-DATA_SRC_URI = "https://github.com/unicode-org/icu/releases/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-data.zip"
+BASE_SRC_URI = "${GITHUB_BASE_URI}/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-src.tgz"
+DATA_SRC_URI = "${GITHUB_BASE_URI}/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-data.zip"
SRC_URI = "${BASE_SRC_URI};name=code \
${DATA_SRC_URI};name=data \
file://filter.json \
@@ -111,8 +111,8 @@ SRC_URI:append:class-target = "\
SRC_URI[code.sha256sum] = "67a7e6e51f61faf1306b6935333e13b2c48abd8da6d2f46ce6adca24b1e21ebf"
SRC_URI[data.sha256sum] = "e3882b4fece6e5e039f22c3189b7ba224180fd26fdbfa9db284617455b93e804"
-UPSTREAM_CHECK_REGEX = "icu4c-(?P<pver>\d+(_\d+)+)-src"
-UPSTREAM_CHECK_URI = "https://github.com/unicode-org/icu/releases"
+UPSTREAM_CHECK_REGEX = "releases/tag/release-(?P<pver>(?!.+rc).+)"
+GITHUB_BASE_URI = "https://github.com/unicode-org/icu/releases"
EXTRA_OECONF:append:libc-musl = " ac_cv_func_strtod_l=no"
diff --git a/poky/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.14.bb b/poky/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.14.bb
index fad92df507..fbfbdacbdd 100644
--- a/poky/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.14.bb
+++ b/poky/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.14.bb
@@ -8,8 +8,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://doc/LICENSING.txt;md5=dfc50c7cea7b66935844587a0f7389e7 \
"
-SRC_URI = "https://github.com/ivmai/libatomic_ops/releases/download/v${PV}/libatomic_ops-${PV}.tar.gz"
-UPSTREAM_CHECK_URI = "https://github.com/ivmai/libatomic_ops/releases"
+SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/libatomic_ops-${PV}.tar.gz"
+GITHUB_BASE_URI = "https://github.com/ivmai/libatomic_ops/releases"
SRC_URI[sha256sum] = "390f244d424714735b7050d056567615b3b8f29008a663c262fb548f1802d292"
@@ -17,6 +17,6 @@ S = "${WORKDIR}/libatomic_ops-${PV}"
ALLOW_EMPTY:${PN} = "1"
-inherit autotools pkgconfig
+inherit autotools pkgconfig github-releases
BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-support/libcheck/libcheck_0.15.2.bb b/poky/meta/recipes-support/libcheck/libcheck_0.15.2.bb
index 1393aa2a1c..83f3c3f46e 100644
--- a/poky/meta/recipes-support/libcheck/libcheck_0.15.2.bb
+++ b/poky/meta/recipes-support/libcheck/libcheck_0.15.2.bb
@@ -10,14 +10,14 @@ SECTION = "devel"
LICENSE = "LGPL-2.1-or-later"
LIC_FILES_CHKSUM = "file://COPYING.LESSER;md5=2d5025d4aa3495befef8f17206a5b0a1"
-SRC_URI = "https://github.com/${BPN}/check/releases/download/${PV}/check-${PV}.tar.gz \
+SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/check-${PV}.tar.gz \
file://not-echo-compiler-info-to-check_stdint.h.patch"
SRC_URI[sha256sum] = "a8de4e0bacfb4d76dd1c618ded263523b53b85d92a146d8835eb1a52932fa20a"
-UPSTREAM_CHECK_URI = "https://github.com/libcheck/check/releases/"
+GITHUB_BASE_URI = "https://github.com/libcheck/check/releases/"
S = "${WORKDIR}/check-${PV}"
-inherit autotools pkgconfig texinfo
+inherit autotools pkgconfig texinfo github-releases
CACHED_CONFIGUREVARS += "ac_cv_path_AWK_PATH=${bindir}/gawk"
diff --git a/poky/meta/recipes-support/libevent/libevent_2.1.12.bb b/poky/meta/recipes-support/libevent/libevent_2.1.12.bb
index e26e8a9b57..55a65e6c08 100644
--- a/poky/meta/recipes-support/libevent/libevent_2.1.12.bb
+++ b/poky/meta/recipes-support/libevent/libevent_2.1.12.bb
@@ -11,7 +11,7 @@ SECTION = "libs"
LICENSE = "BSD-3-Clause & MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=17f20574c0b154d12236d5fbe964f549"
-SRC_URI = "https://github.com/libevent/libevent/releases/download/release-${PV}-stable/${BP}-stable.tar.gz \
+SRC_URI = "${GITHUB_BASE_URI}/download/release-${PV}-stable/${BP}-stable.tar.gz \
file://Makefile-missing-test-dir.patch \
file://run-ptest \
file://0001-test-regress_dns.c-patch-out-tests-that-require-a-wo.patch \
@@ -21,15 +21,14 @@ SRC_URI = "https://github.com/libevent/libevent/releases/download/release-${PV}-
"
SRC_URI[sha256sum] = "92e6de1be9ec176428fd2367677e61ceffc2ee1cb119035037a27d346b0403bb"
-
-UPSTREAM_CHECK_URI = "http://libevent.org/"
+UPSTREAM_CHECK_REGEX = "releases/tag/release-(?P<pver>.+)-stable"
S = "${WORKDIR}/${BPN}-${PV}-stable"
PACKAGECONFIG ??= ""
PACKAGECONFIG[openssl] = "--enable-openssl,--disable-openssl,openssl"
-inherit autotools
+inherit autotools github-releases
# Needed for Debian packaging
LEAD_SONAME = "libevent-2.1.so"
diff --git a/poky/meta/recipes-support/libexif/libexif_0.6.24.bb b/poky/meta/recipes-support/libexif/libexif_0.6.24.bb
index 20ba0ef282..367f012f8c 100644
--- a/poky/meta/recipes-support/libexif/libexif_0.6.24.bb
+++ b/poky/meta/recipes-support/libexif/libexif_0.6.24.bb
@@ -10,14 +10,12 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=243b725d71bb5df4a1e5920b344b86ad"
def version_underscore(v):
return "_".join(v.split("."))
-SRC_URI = "https://github.com/libexif/libexif/releases/download/v${PV}/libexif-${PV}.tar.bz2 \
+SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/libexif-${PV}.tar.bz2 \
"
SRC_URI[sha256sum] = "d47564c433b733d83b6704c70477e0a4067811d184ec565258ac563d8223f6ae"
-UPSTREAM_CHECK_URI = "https://github.com/libexif/libexif/releases/"
-
-inherit autotools gettext
+inherit autotools gettext github-releases
EXTRA_OECONF += "--disable-docs"
diff --git a/poky/meta/recipes-support/libffi/libffi_3.4.2.bb b/poky/meta/recipes-support/libffi/libffi_3.4.2.bb
index 71d9518baf..41c3cad586 100644
--- a/poky/meta/recipes-support/libffi/libffi_3.4.2.bb
+++ b/poky/meta/recipes-support/libffi/libffi_3.4.2.bb
@@ -10,18 +10,16 @@ A layer must exist above `libffi' that handles type conversions for values passe
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=679b5c9bdc79a2b93ee574e193e7a7bc"
-SRC_URI = "https://github.com/libffi/libffi/releases/download/v${PV}/${BPN}-${PV}.tar.gz \
+SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BPN}-${PV}.tar.gz \
file://not-win32.patch \
file://0001-arm-sysv-reverted-clang-VFP-mitigation.patch \
"
SRC_URI[sha256sum] = "540fb721619a6aba3bdeef7d940d8e9e0e6d2c193595bc243241b77ff9e93620"
-UPSTREAM_CHECK_URI = "https://github.com/libffi/libffi/releases/"
-UPSTREAM_CHECK_REGEX = "libffi-(?P<pver>\d+(\.\d+)+)\.tar"
EXTRA_OECONF += "--disable-builddir --disable-exec-static-tramp"
EXTRA_OECONF:class-native += "--with-gcc-arch=generic"
EXTRA_OEMAKE:class-target = "LIBTOOLFLAGS='--tag=CC'"
-inherit autotools texinfo multilib_header
+inherit autotools texinfo multilib_header github-releases
do_install:append() {
oe_multilib_header ffi.h ffitarget.h
diff --git a/poky/meta/recipes-support/libgcrypt/files/no-bench-slope.patch b/poky/meta/recipes-support/libgcrypt/files/no-bench-slope.patch
new file mode 100644
index 0000000000..8de3c6713b
--- /dev/null
+++ b/poky/meta/recipes-support/libgcrypt/files/no-bench-slope.patch
@@ -0,0 +1,20 @@
+The bench-slope test appears to be aborting fairly frequently, which causes
+failures on the autobuilder.
+
+Until this has been root-caused, disable the test.
+
+Upstream-Status: Inappropriate
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+diff --git a/tests/testdrv.c b/tests/testdrv.c
+index 0ccde326..d3455186 100644
+--- a/tests/testdrv.c
++++ b/tests/testdrv.c
+@@ -77,7 +77,6 @@ static struct {
+ { "t-x448" },
+ { "t-ed448" },
+ { "benchmark" },
+- { "bench-slope" },
+ { "hashtest-256g", "hashtest", "--gigs 256 SHA1 SHA256 SHA512 SM3",
+ LONG_RUNNING },
+ { NULL }
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 b0d88de3aa..bf9d7cbd10 100644
--- a/poky/meta/recipes-support/libgcrypt/libgcrypt_1.10.1.bb
+++ b/poky/meta/recipes-support/libgcrypt/libgcrypt_1.10.1.bb
@@ -24,6 +24,7 @@ SRC_URI = "${GNUPG_MIRROR}/libgcrypt/libgcrypt-${PV}.tar.bz2 \
file://0002-libgcrypt-fix-building-error-with-O2-in-sysroot-path.patch \
file://0004-tests-Makefile.am-fix-undefined-reference-to-pthread.patch \
file://no-native-gpg-error.patch \
+ file://no-bench-slope.patch \
file://run-ptest \
"
SRC_URI[sha256sum] = "ef14ae546b0084cd84259f61a55e07a38c3b53afc0f546bffcef2f01baffe9de"
diff --git a/poky/meta/recipes-support/libical/libical_3.0.14.bb b/poky/meta/recipes-support/libical/libical_3.0.14.bb
index 58baf3f32f..44030fdc9f 100644
--- a/poky/meta/recipes-support/libical/libical_3.0.14.bb
+++ b/poky/meta/recipes-support/libical/libical_3.0.14.bb
@@ -12,13 +12,12 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=1910a2a76ddf6a9ba369182494170d87 \
"
SECTION = "libs"
-SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/v${PV}/${BP}.tar.gz \
+SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BP}.tar.gz \
file://0001-cmake-Do-not-export-CC-into-gir-compiler.patch \
"
SRC_URI[sha256sum] = "4284b780356f1dc6a01f16083e7b836e63d3815e27ed0eaaad684712357ccc8f"
-UPSTREAM_CHECK_URI = "https://github.com/libical/libical/releases"
-inherit cmake pkgconfig gobject-introspection vala
+inherit cmake pkgconfig gobject-introspection vala github-releases
DEPENDS += "libical-native"
diff --git a/poky/meta/recipes-support/libjitterentropy/libjitterentropy_3.4.0.bb b/poky/meta/recipes-support/libjitterentropy/libjitterentropy_3.4.1.bb
index 1d291cc357..3fb8c6b147 100644
--- a/poky/meta/recipes-support/libjitterentropy/libjitterentropy_3.4.0.bb
+++ b/poky/meta/recipes-support/libjitterentropy/libjitterentropy_3.4.1.bb
@@ -10,7 +10,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=64a87180908540620ce364b5e69b3b03 \
file://LICENSE.bsd;md5=66a5cedaf62c4b2637025f049f9b826f \
"
SRC_URI = "git://github.com/smuellerDD/jitterentropy-library.git;branch=master;protocol=https"
-SRCREV = "2e5019cfe63038faaa405ce53715effe4ea580e4"
+SRCREV = "4544e11320138ac02797af81766f4476a71bb09f"
S = "${WORKDIR}/git"
# remove at next version upgrade or when output changes
diff --git a/poky/meta/recipes-support/libnl/libnl_3.7.0.bb b/poky/meta/recipes-support/libnl/libnl_3.7.0.bb
index ddcc83a039..ef286a6429 100644
--- a/poky/meta/recipes-support/libnl/libnl_3.7.0.bb
+++ b/poky/meta/recipes-support/libnl/libnl_3.7.0.bb
@@ -14,17 +14,17 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
DEPENDS = "flex-native bison-native"
-SRC_URI = "https://github.com/thom311/${BPN}/releases/download/${BPN}${@d.getVar('PV').replace('.','_')}/${BP}.tar.gz \
+SRC_URI = "${GITHUB_BASE_URI}/download/${BPN}${@d.getVar('PV').replace('.','_')}/${BP}.tar.gz \
file://enable-serial-tests.patch \
file://run-ptest \
"
SRC_URI[sha256sum] = "9fe43ccbeeea72c653bdcf8c93332583135cda46a79507bfd0a483bb57f65939"
+GITHUB_BASE_URI = "https://github.com/thom311/${BPN}/releases"
+UPSTREAM_CHECK_REGEX = "releases/tag/libnl(?P<pver>.+)"
-UPSTREAM_CHECK_URI = "https://github.com/thom311/${BPN}/releases"
-
-inherit autotools pkgconfig ptest
+inherit autotools pkgconfig ptest github-releases
FILES:${PN} = "${libdir}/libnl-3.so.* \
${libdir}/libnl.so.* \
diff --git a/poky/meta/recipes-support/libpcre/libpcre2_10.40.bb b/poky/meta/recipes-support/libpcre/libpcre2_10.40.bb
index 8c2cadfe2b..13f7c8305f 100644
--- a/poky/meta/recipes-support/libpcre/libpcre2_10.40.bb
+++ b/poky/meta/recipes-support/libpcre/libpcre2_10.40.bb
@@ -10,9 +10,10 @@ SECTION = "devel"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENCE;md5=41bfb977e4933c506588724ce69bf5d2"
-SRC_URI = "https://github.com/PhilipHazel/pcre2/releases/download/pcre2-${PV}/pcre2-${PV}.tar.bz2"
+SRC_URI = "${GITHUB_BASE_URI}/download/pcre2-${PV}/pcre2-${PV}.tar.bz2"
-UPSTREAM_CHECK_URI = "https://github.com/PhilipHazel/pcre2/releases"
+GITHUB_BASE_URI = "https://github.com/PhilipHazel/pcre2/releases"
+UPSTREAM_CHECK_REGEX = "releases/tag/pcre2-(?P<pver>.+)"
SRC_URI[sha256sum] = "14e4b83c4783933dc17e964318e6324f7cae1bc75d8f3c79bc6969f00c159d68"
@@ -25,7 +26,7 @@ DEPENDS += "bzip2 zlib"
BINCONFIG = "${bindir}/pcre2-config"
-inherit autotools binconfig-disabled
+inherit autotools binconfig-disabled github-releases
EXTRA_OECONF = "\
--enable-newline-is-lf \
diff --git a/poky/meta/recipes-support/libproxy/libproxy_0.4.18.bb b/poky/meta/recipes-support/libproxy/libproxy_0.4.18.bb
index a9f2bf6cae..01ba2a6fe9 100644
--- a/poky/meta/recipes-support/libproxy/libproxy_0.4.18.bb
+++ b/poky/meta/recipes-support/libproxy/libproxy_0.4.18.bb
@@ -12,13 +12,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \
DEPENDS = "glib-2.0"
-SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/${PV}/${BP}.tar.xz"
+SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/${BP}.tar.xz"
SRC_URI[sha256sum] = "69b5856e9ea42c38ac77e6b8c92ffc86a71d341fef74e77bef85f9cc6c47a4b1"
-UPSTREAM_CHECK_URI = "https://github.com/libproxy/libproxy/releases"
-UPSTREAM_CHECK_REGEX = "libproxy-(?P<pver>.*)\.tar"
-
-inherit cmake pkgconfig
+inherit cmake pkgconfig github-releases
PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gnome', '', d)} gnome3"
PACKAGECONFIG[gnome] = "-DWITH_GNOME=yes,-DWITH_GNOME=no,gconf"
diff --git a/poky/meta/recipes-support/libpsl/libpsl_0.21.1.bb b/poky/meta/recipes-support/libpsl/libpsl_0.21.1.bb
index 4fc0ad8acb..58f56c145e 100644
--- a/poky/meta/recipes-support/libpsl/libpsl_0.21.1.bb
+++ b/poky/meta/recipes-support/libpsl/libpsl_0.21.1.bb
@@ -10,13 +10,13 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=5437030d9e4fbe7267ced058ddb8a7f5 \
file://COPYING;md5=f41d10997a12da5ee3c24ceeb0148d18"
-SRC_URI = "https://github.com/rockdaboot/${BPN}/releases/download/${PV}/${BP}.tar.gz \
+SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/${BP}.tar.gz \
"
SRC_URI[sha256sum] = "ac6ce1e1fbd4d0254c4ddb9d37f1fa99dec83619c1253328155206b896210d4c"
-UPSTREAM_CHECK_URI = "https://github.com/rockdaboot/libpsl/releases"
+GITHUB_BASE_URI = "https://github.com/rockdaboot/libpsl/releases"
-inherit autotools gettext gtk-doc manpages pkgconfig lib_package
+inherit autotools gettext gtk-doc manpages pkgconfig lib_package github-releases
PACKAGECONFIG ?= "icu"
PACKAGECONFIG[manpages] = "--enable-man,--disable-man,libxslt-native"
diff --git a/poky/meta/recipes-support/libusb/libusb1_1.0.26.bb b/poky/meta/recipes-support/libusb/libusb1_1.0.26.bb
index fd63e7adc2..7371faf017 100644
--- a/poky/meta/recipes-support/libusb/libusb1_1.0.26.bb
+++ b/poky/meta/recipes-support/libusb/libusb1_1.0.26.bb
@@ -10,17 +10,17 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
BBCLASSEXTEND = "native nativesdk"
-SRC_URI = "https://github.com/libusb/libusb/releases/download/v${PV}/libusb-${PV}.tar.bz2 \
+SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/libusb-${PV}.tar.bz2 \
file://run-ptest \
"
-UPSTREAM_CHECK_URI = "https://github.com/libusb/libusb/releases"
+GITHUB_BASE_URI = "https://github.com/libusb/libusb/releases"
SRC_URI[sha256sum] = "12ce7a61fc9854d1d2a1ffe095f7b5fac19ddba095c259e6067a46500381b5a5"
S = "${WORKDIR}/libusb-${PV}"
-inherit autotools pkgconfig ptest
+inherit autotools pkgconfig ptest github-releases
PACKAGECONFIG:class-target ??= "udev"
PACKAGECONFIG[udev] = "--enable-udev,--disable-udev,udev"
diff --git a/poky/meta/recipes-support/nghttp2/nghttp2_1.48.0.bb b/poky/meta/recipes-support/nghttp2/nghttp2_1.49.0.bb
index 4ff3ab829b..6c3d543083 100644
--- a/poky/meta/recipes-support/nghttp2/nghttp2_1.48.0.bb
+++ b/poky/meta/recipes-support/nghttp2/nghttp2_1.49.0.bb
@@ -4,15 +4,13 @@ SECTION = "libs"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=764abdf30b2eadd37ce47dcbce0ea1ec"
-UPSTREAM_CHECK_URI = "https://github.com/nghttp2/nghttp2/releases"
-
SRC_URI = "\
- https://github.com/nghttp2/nghttp2/releases/download/v${PV}/nghttp2-${PV}.tar.xz \
+ ${GITHUB_BASE_URI}/download/v${PV}/nghttp2-${PV}.tar.xz \
file://0001-fetch-ocsp-response-use-python3.patch \
"
-SRC_URI[sha256sum] = "47d8f30ee4f1bc621566d10362ca1b3ac83a335c63da7144947c806772d016e4"
+SRC_URI[sha256sum] = "b0cfd492bbf0b131c472e8f6501c9f4ee82b51b68130f47b278c0b7c9848a66e"
-inherit cmake manpages python3native
+inherit cmake manpages python3native github-releases
PACKAGECONFIG[manpages] = ""
# examples are never installed, and don't need to be built in the
diff --git a/poky/meta/recipes-support/numactl/numactl_git.bb b/poky/meta/recipes-support/numactl/numactl_git.bb
index 93547ea239..712cf0203f 100644
--- a/poky/meta/recipes-support/numactl/numactl_git.bb
+++ b/poky/meta/recipes-support/numactl/numactl_git.bb
@@ -8,10 +8,10 @@ SECTION = "apps"
inherit autotools-brokensep ptest
-LIC_FILES_CHKSUM = "file://README.md;beginline=19;endline=32;md5=f8ff2391624f28e481299f3f677b21bb"
+LIC_FILES_CHKSUM = "file://README.md;beginline=19;endline=32;md5=9f34c3af4ed6f3f5df0da5f3c0835a43"
-SRCREV = "dd6de072c92c892a86e18c0fd0dfa1ba57a9a05d"
-PV = "2.0.14"
+SRCREV = "01a39cb4edc0dd0f4151b7ad11e0c56d2e612a02"
+PV = "2.0.15"
SRC_URI = "git://github.com/numactl/numactl;branch=master;protocol=https \
file://Fix-the-test-output-format.patch \
diff --git a/poky/meta/recipes-support/re2c/re2c_3.0.bb b/poky/meta/recipes-support/re2c/re2c_3.0.bb
index ab047601ae..f8f85125a3 100644
--- a/poky/meta/recipes-support/re2c/re2c_3.0.bb
+++ b/poky/meta/recipes-support/re2c/re2c_3.0.bb
@@ -7,10 +7,10 @@ SECTION = "devel"
LICENSE = "PD"
LIC_FILES_CHKSUM = "file://LICENSE;md5=64eca4d8a3b67f9dc7656094731a2c8d"
-SRC_URI = "https://github.com/skvadrik/re2c/releases/download/${PV}/${BPN}-${PV}.tar.xz"
+SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/${BPN}-${PV}.tar.xz"
SRC_URI[sha256sum] = "b3babbbb1461e13fe22c630a40c43885efcfbbbb585830c6f4c0d791cf82ba0b"
-UPSTREAM_CHECK_URI = "https://github.com/skvadrik/re2c/releases"
+GITHUB_BASE_URI = "https://github.com/skvadrik/re2c/releases"
BBCLASSEXTEND = "native nativesdk"
-inherit autotools
+inherit autotools github-releases
diff --git a/poky/meta/recipes-support/sqlite/sqlite3_3.39.2.bb b/poky/meta/recipes-support/sqlite/sqlite3_3.39.3.bb
index dfef480895..fce497e0e1 100644
--- a/poky/meta/recipes-support/sqlite/sqlite3_3.39.2.bb
+++ b/poky/meta/recipes-support/sqlite/sqlite3_3.39.3.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] = "852be8a6183a17ba47cee0bbff7400b7aa5affd283bf3beefc34fcd088a239de"
+SRC_URI[sha256sum] = "7868fb3082be3f2cf4491c6fba6de2bddcbc293a35fefb0624ee3c13f01422b9"
# -19242 is only an issue in specific development branch commits
CVE_CHECK_IGNORE += "CVE-2019-19242"
diff --git a/poky/meta/recipes-support/taglib/taglib_1.12.bb b/poky/meta/recipes-support/taglib/taglib_1.12.bb
index 47ad8aacb6..e6e3ef07ad 100644
--- a/poky/meta/recipes-support/taglib/taglib_1.12.bb
+++ b/poky/meta/recipes-support/taglib/taglib_1.12.bb
@@ -14,7 +14,7 @@ SRC_URI = "http://taglib.github.io/releases/${BP}.tar.gz"
SRC_URI[md5sum] = "4313ed2671234e029b7af8f97c84e9af"
SRC_URI[sha256sum] = "7fccd07669a523b07a15bd24c8da1bbb92206cb19e9366c3692af3d79253b703"
-UPSTREAM_CHECK_URI = "http://github.com/taglib/taglib/releases/"
+UPSTREAM_CHECK_URI = "https://taglib.org/"
BINCONFIG = "${bindir}/taglib-config"
diff --git a/poky/meta/recipes-support/vim/vim.inc b/poky/meta/recipes-support/vim/vim.inc
index 33a8299243..cbc370100b 100644
--- a/poky/meta/recipes-support/vim/vim.inc
+++ b/poky/meta/recipes-support/vim/vim.inc
@@ -20,8 +20,8 @@ SRC_URI = "git://github.com/vim/vim.git;branch=master;protocol=https \
file://no-path-adjust.patch \
"
-PV .= ".0341"
-SRCREV = "92a3d20682d46359bb50a452b4f831659e799155"
+PV .= ".0598"
+SRCREV = "8279af514ca7e5fd3c31cf13b0864163d1a0bfeb"
# Remove when 8.3 is out
UPSTREAM_VERSION_UNKNOWN = "1"