Add a new recipe for the Open Asset Import Library (Assimp) using
the latest upstream git source. This library provides a unified
interface to import various 3D model formats.
Signed-off-by: Ashwin Prabhakar <ashwin.prabhakar@qti.qualcomm.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The do_create_v8_qemu_wrapper function depends on target information,
which ends up in the task signature, but the qemu wrapper isn't needed
for native builds. This causes unnecessary rebuilds of nodejs-native.
Delete the task for nodejs-native and don't install the wrapper script
for it.
This issue was previously addressed by b2a950a ("nodejs: inherit qemu
class conditionally"), which was later reverted. This patch addresses
it by removing the unused task from native builds instead of inheriting
qemu conditionally.
Signed-off-by: Jeroen Hofstee <jhofstee@victronenergy.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
===========
* Fix to set VERSION_INFO to create .so.3 instead of .so.11 which will
be reserved for a future 1.10.0 release
* Bugfix: Insufficient verification that responses belong to a
query (CVE-2026-10846). Thanks Pablo Ruiz from 'codecome.ai'
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Improvements ============
- Add glz::reflect_array to serialize structs as arrays without enumerating
members
- Centralize Asio backend selection into a glaze::asio target, and export it to
find_package consumers so the standalone/Boost Asio macro pair is configured
consistently
- Support custom_read/custom_write types as tagged variant alternatives
- Support custom_read/custom_write types as tagged variant alternatives in YAML
- Add a CI workflow for MSVC /O2 builds
Fixes ======
- Fix streaming buffer refill when skipping unknown keys
- RFC 6455: reject oversized WebSocket control frames
- RFC 9112: fix Host authority in HTTP and WebSocket clients
- Cast to unsigned char before cctype calls in parsers (avoids UB on negative
char values)
- RFC 6455: fix WebSocket close frame validation
- Fix WebSocket client handling of data received together with the handshake
response
- Guard std::numeric_limits<T>::min/max against Windows min/max macros
- Fix TOML/YAML block layout for transparent write wrappers
- Resolve custom variant specialization ambiguity for
YAML/BEVE/CBOR/MessagePack/TOML
- Guard std::min & std::max calls from minwindef.h defines
- Fixed CMake version to match v7.8.1 tag (v7.8.0 was missing CMake and
version.hpp bump)
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Starting with this release, libgpiod now uses meson so the updates to
the recipe are quite extensive. There's a new shared library:
libgpiotools, that exports symbols previously only accessible to
gpio-tools that allow users to build their own high-level programs while
reusing the code doing GPIO line & chip lookup. While at it: move
libgpiodbus into its own package as well.
Full changelog:
New features:
- replace autotools with meson & ninja as the build system
- provide libgpiotools: a new shared library exposing a public API for
line name lookup and other high-level helpers previously only available
internally to gpio-tools
- add initial-state option to gpiomon to display line states before
waiting for events
- provide comprehensive sphinx-based documentation for all components:
core C API, C++ bindings, Python bindings, GLib bindings, D-Bus API,
gpio-tools, and libgpiotools
- extend libgpiosim with new routines allowing to use the new functionality
provided in more recent versions of the gpio-sim module in the kernel
Improvements:
- make tests work with newer coreutils by removing cases checking tools'
behavior on SIGINT which stopped working due to changes in behavior of the
timeout tool
- decouple the libgpiod core C library API version from the global libgpiod
project version as the former is now quite stable and no longer changes
with every release
- extend libgpiosim self-tests
Bug fixes:
- allow modifying settings for existing offsets in a full line-config
- fix signed/unsigned type mismatch in gpiod_line_request_get_value()
- add explicit NUL-termination after strncpy() calls in core library
- fix consumer string in line_info stream operator in C++ bindings
- use get_mapped_value() for all enum mappings in line_info in C++ bindings
- move g_tree_remove() out of g_assert() in gpiodbus_id_free() to avoid
resource exhaustion when assertions are disabled
- return 0 when zero events are requested in edge-event API
- fix gpionotify watching lines on the wrong chip
- reject trailing garbage in parse_period() in gpio-tools
- store interactive sleep period in a long long in gpioset to avoid overflow
- use gpiod_line_settings_free() to release settings in line-config
- fix buffer over-read bugs when translating uAPI structs to library types
- fix variable and argument types where necessary
- sanitize values returned by the kernel to avoid potential buffer overflows
- fix memory leaks in gpio-tools
- add missing return value checks in gpio-tools
- fix period parsing in gpio-tools
- use correct loop counter in error path in gpio-manager
- don't try to export the same chip object twice in gpio-manager on duplicate
uevents
- use the "add"/"remove" uevents when watching for GPIO chips in the system as
the "bind"/"unbind" pair is only emitted by linux for controllers which don't
have a firmware node attached
- don't allow clearing hogs on active devices in tests
- don't install uneeded files
- fix a pkgconfig check in configure
- fix a return type check in test harness
- don't implicity unquote unnamed lines in gpioinfo
- remove useless variable in reconfigure example
- don't let struct line_config balloon out of control and trigger an OOM
- drop python3-config check from configure.ac
- fix potential PyDict_Next() crash in python bindings
- disable the GPIO simulator before releasing it in C++, rust and python
bindings tests
- fix the way we wait for simulated chips to appear in D-Bus command-line
client tests
- make read_edge_events lifetimes more explicit in rust bindings
- make waiting for info events more reliable in GLib bindings tests
- defer removal of bank entries when device is not disabled in libgpiosim
- add missing LineInfo import to __init__.py in python bindings
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The patch was creating the file /run/.adb.root with read-write permission for "other",
so any user was able to write to it.
Make the file owned by user adb, and remove permissions for group and other.
Before:
```
root@raspberrypi4-64:~# ls -l /run/.adb.root
-rw-rw-rw- 1 root root 8 Mar 13 15:42 /run/.adb.root
```
After:
```
root@raspberrypi4-64:~# ls -l /run/adb.root
-rw------- 1 adb adb 8 Mar 13 15:35 /run/adb.root
```
Also rename the file from .adbd.root to adbd.root, since hidden files are
not the convention in /run
AI-Generated: Uses GitHub Copilot (Claude Sonnet 4.6)
Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade libsodium from 1.0.19 to 1.0.20 for minifi-cpp third party
dependency.
Updated below patch for upgrading:
0003-Fix-libsodium-build.patch
Removed below patch because it is in the new version:
0007-libsodium-aarch64-set-compiler-attributes-after-including-arm_.patcha
Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Removed all the paths' changes in do_install because of the old test
by using "/usr/bin/minifi &" instead of "minifi.sh run &", which
doesn't define MINIFI_HOME as an environment var.
This causes minifi-cpp thinks MINIFI_PACKAGING_TYPE is RPM, and tries to
find files in different paths from TGZ, while yotco uses
MINIFI_PACKAGING_TYPE TGZ by default.
Correct test case and those changes aren't needed any more.
Fixes c0e52930a9 ("minifi-cpp: upgrade 0.99.1 -> 0.99.2")
Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Libsoup-2.4 has been deprecated and is no longer receiving support or
security fixes. The recipe can be removed now that no recipes in
meta-openembedded depend on it.
Signed-off-by: Colin Pinnell McAllister <colinmca242@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Target and ptest packages miss the run-time dependency, which causes the
following build errors:
ERROR: tbb-1_2022.3.0-r0 do_package_qa: QA Issue: /usr/lib/tbb/ptest/gnu_15.2_cxx11_64_release/test_tbbbind contained in package tbb-ptest requires libhwloc.so.15()(64bit), but no providers found in RDEPENDS:tbb-ptest? [file-rdeps]
ERROR: tbb-1_2022.3.0-r0 do_package_qa: QA Issue: /usr/lib/libtbbbind_2_5.so.3.17 contained in package tbb requires libhwloc.so.15()(64bit), but no providers found in RDEPENDS:tbb? [file-rdeps]
ERROR: tbb-1_2022.3.0-r0 do_package_qa: Fatal QA errors were found, failing task.
Signed-off-by: Vyacheslav Yurkov <uvv.mail@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The android-tools-conf recipe used /sys/class/android_usb/android0/,
an interface exported by the out-of-tree android.c USB gadget driver
that Google carried in Android kernels but never submitted to mainline
Linux. It was never part of any upstream kernel release.
The configfs-based USB gadget framework (CONFIG_USB_CONFIGFS) was
merged into mainline Linux with kernel 3.10 (June 2013) and is the
correct interface for all upstream kernels since then. Additionally,
Google's Generic Kernel Image (GKI) initiative dropped android.c from
Android common kernels starting with kernel 5.10 (Android 12, 2021),
so even custom BSPs targeting modern Android cannot use this interface.
Remove android-tools-conf and rename android-tools-conf-configfs to
android-tools-conf, since the configfs-based implementation is the
only correct one for any modern kernel. Backward compatibility is
preserved via PROVIDES/RPROVIDES retaining the old
android-tools-conf-configfs name.
AI-Generated: Uses GitHub Copilot (Claude Sonnet 4.6)
Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
dm-verity can use Reed-Solomon forward error correction (FEC) data
to transparently recover a limited number of corrupted blocks instead
of only detecting them. This can be useful for mitigating error-prone
storage.
We generate this FEC data as an option, controlled by VERITY_FEC
(default off, same behavior as before) and VERITY_FEC_ROOTS (number of
Reed-Solomon roots, default 2). The FEC data is appended to the hash
tree by default. If VERITY_IMAGE_FECDEV_SUFFIX is set, a separate file
with the given suffix will be used.
When enabled, the parameter file gains additional variables necessary
for correct DM table generation.
Recipes that do not set VERITY_FEC = "1" behave the same as before.
Signed-off-by: Andreas Zdziarstek <andreas.zdziarstek@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The build fails with
../sources/multitail-7.1.5/mt.c: In function 'do_color_print':
../sources/multitail-7.1.5/mt.c:712:25: warning: implicit declaration of function 'waddnwstr'; did you mean 'waddnstr'? [-Wimplicit-function-declarat
712 | waddnwstr(win -> win, &wcur, 1);
| ^~~~~~~~~
| waddnstr
I suspect it's due to gcc-16, because in a build environment with gcc-15 it
compiles. Upstream has already set a todo at this code line.
Signed-off-by: Jörg Sommer <joerg.sommer@navimatix.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Add recipe for rtc-testbench v5.4, a real-time and non-real-time traffic
validation tool for converged TSN networks from Linutronix. It validates
real-time performance and robustness of hardware, drivers, and the Linux
network stack on TSN-enabled Ethernet networks using AF_PACKET or AF_XDP
with eBPF, supporting protocols like PROFINET and OPC UA PubSub.
rtc-testbench depends on libxdp provided by xdp-tools.
Depends-on: xdp-tools: upgrade 1.2.10 -> 1.6.3
Signed-off-by: Rajkumar Patel <patel.rajkumar@oss.qualcomm.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Drop patches 0002 and 0004 as they are no longer needed with 1.6.3.
Rework patches 0001 and 0003 to properly handle CC tool validation
and libxdp symlink installation for cross-compilation.
Set PRODUCTION=1 and pass BPF_CFLAGS with sysroot include paths
and ffile-prefix-map for reproducible cross-compilation builds.
Include ${libdir}/bpf/* in FILES:${PN} as libxdp.so resolves BPF
objects at runtime from that path. Add bash to RDEPENDS for the
test scripts.
Signed-off-by: Rajkumar Patel <patel.rajkumar@oss.qualcomm.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Import xdp-tools recipe from meta-dpdk to meta-oe.
xdp-tools provides a set of utilities and helpers for working
with XDP (eXpress Data Path) and eBPF-based packet processing
in the Linux networking stack.
Although currently available in meta-dpdk, xdp-tools is a
standalone utility with no direct dependency on DPDK, and is
generally useful for networking and XDP-based workflows.
Adding it to meta-oe makes it available without requiring
the meta-dpdk layer.
Signed-off-by: Rajkumar Patel <patel.rajkumar@oss.qualcomm.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade from 29.0.6.r14 to 35.0.2, switching to the Debian
android-platform-tools source package layout which ships Debian-maintained
make fragments and patch series under debian/system/.
The old recipe carried a hand-maintained patch stack on top of a
custom build system (rules_yocto.mk). The new recipe delegates to
Debian's make fragments and applies only the OE-specific patches needed
on top.
Notable upstream changes between 29.0.6 and 35.0.2 (see release notes at
https://developer.android.com/tools/releases/platform-tools):
- adb: libusb is now the default USB backend on Linux (35.0.0)
- adb: receive windowing for better throughput on high-latency links (33.0.3)
- adb: graceful USB interface release on shutdown (35.0.2)
- adb: wireless pairing and incremental APK installation support (30.0.0)
- adb: adb transport-id for safe scripted device waits (30.0.2)
- adb: fix shell exit code when device disconnects (35.0.0)
- fastboot: download speed improvements up to 980MB/s on SuperSpeed+ (35.0.0)
OE-specific changes:
- adbd now drops privileges to a dedicated "adb" system user (matching
Android's production security model); use "adb root" to escalate
- adbd root/unroot/remount support added for non-Android targets
- android-gadget-setup updated to mount functionfs with uid/gid ownership
so the unprivileged adbd can access the FunctionFS endpoints
- Depends on new android-libboringssl recipe for BoringSSL shared libraries
- android-tools-adbd.service uses Type=notify so systemd waits for adbd's
sd_notify READY=1 before proceeding with ExecStartPost
- android-gadget-start now respects ANDROID_GADGET_UDC_DELAY (default 10s
for non-systemd paths); the configfs drop-in sets it to 0 since adbd has
already signalled readiness before ExecStartPost runs, eliminating the
fixed delay on restart
Tested on Raspberry Pi 4B (MACHINE=raspberrypi4-64) with USB-C OTG port,
openembedded-core main branch, meta-openembedded master-next, kernel 6.12:
- adb devices: device enumerated as 18d1:d002
- adb shell: connection as unprivileged adb user
- adb root / adb unroot: privilege escalation and drop
- adb reboot: device reboot via adb
- adb forward: SSH tunnel through ADB verified
- oe-run-native android-tools-native adb / fastboot: native host tools build
Note: adbd only starts when /etc/usb-debugging-enabled exists on the target
(ConditionPathExists in the service file). This is intentional — ADB is
disabled by default for security. Create the file at image build time or
at runtime to enable it.
Requires kernel config for USB gadget support (e.g. via a .cfg fragment):
CONFIG_USB_DWC2_DUAL_ROLE=y
CONFIG_USB_GADGET=y
CONFIG_USB_CONFIGFS=y
CONFIG_USB_F_FS=y
CONFIG_USB_CONFIGFS_F_FS=y
Requires in local.conf for RPi4:
RPI_EXTRA_CONFIG = "dtoverlay=dwc2,dr_mode=peripheral"
AI-Generated: Uses GitHub Copilot (Claude Sonnet 4.6)
Signed-off-by: Mihajlo Marinkovic <mmarinkovic@snap.com>
Tested-by: Etienne Cordonnier <ecordonnier@snap.com>
Co-authored-by: Etienne Cordonnier <ecordonnier@snap.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Add a recipe shipping the BoringSSL shared libraries required by
android-tools-adbd. BoringSSL is the TLS/crypto library used by adbd
for ADB authentication.
The libraries are installed under ${libdir}/android/ to avoid conflicting
with the system libcrypto/libssl in the sysroot. A SOVERSION=0 patch is
applied so Yocto's standard .so / .so.0 packaging split works correctly.
An ld.so.conf.d drop-in registers ${libdir}/android so binaries can find
the libraries at runtime.
This recipe is tightly coupled to android-tools: update it together when
upgrading android-tools to a new version.
AI-Generated: Uses GitHub Copilot (Claude Sonnet 4.6)
Signed-off-by: Mihajlo Marinkovic <mmarinkovic@snap.com>
Co-authored-by: Etienne Cordonnier <ecordonnier@snap.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Add a new recipe for osbench, a collection of micro-benchmarks
to measure operating system primitives such as process creation,
thread creation, file operations, and memory allocation.
Signed-off-by: Ashwin Prabhakar <ashwin.prabhakar@qti.qualcomm.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Add a new recipe for ramspeed, a lightweight benchmark utility
that measures cache and memory bandwidth using a set of synthetic
tests.
Signed-off-by: Ashwin Prabhakar <ashwin.prabhakar@qti.qualcomm.com>
ramspeed: Add recipe for cache and memory benchmarking tool
Add a new recipe for ramspeed, a lightweight benchmark utility
that measures cache and memory bandwidth using a set of synthetic
tests.
Signed-off-by: Ashwin Prabhakar <ashwin.prabhakar@qti.qualcomm.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
GCC 16 requires std::set comparators to be callable on a const
comparator object. TaskManager::operator() is used as a comparator
but is not const-qualified, causing the build to fail.
Add the missing const qualifier to restore compatibility with GCC 16.
Link: https://github.com/deniskropp/DirectFB/issues/29
Signed-off-by: Hemanth Kumar M D <Hemanth.KumarMD@windriver.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
webkitgtk3 enables librice support by default, thus build fails.
Add a PACKAGECONFIG for librice to handle this but disable by
default to not change our dependencies. librice requires clang-native
to build bindgen.
todo: enable this PACKAGECONFIG by default?
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
librice implements ice protocol in rust
It is used by default in recent webkitgtk source
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
autotools buildsystem has been removed:
do_configure: no configure script found
move recipe to meta-multimedia
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
After current update this patch fails:
'0005-Makefile.in-remove-_BUILD_STRING-and-_BUILD_TIME.patch'
and needs adjustment
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
At least cgps needs the terminfo files to start. But other tools like
gpspipe work without it. Hence, only recommend it, but do not depend on it.
Signed-off-by: Jörg Sommer <joerg.sommer@navimatix.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The upstream Makefile invokes ldconfig at install time, which runs the
host ldconfig against the target sysroot (${D}) and is both unnecessary
and non-deterministic for cross builds. Pass LDCONFIG=true to make the
install step a no-op for ldconfig, matching the WITHOUT_RPATH_FIX
handling already used here.
Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Improvements
================
- Increase required cmake version to 3.15
- Use ffc (pure-C99) as the RESP3 double parser instead of strtod
- FetchContent should not include cpack
- Add C++ compatibility to sds.h
- Apply FD_CLOEXEC on sockets
Bug Fixes
=============
- fix: add NULL check for c->funcs in redisReconnect
- Fix buffer overflow in tests.
Maintenance
===============
- Fix CI for macOS and docker based runs.
- Fix CI on MacOS runners.
- Define ssize_t as intptr_t in Windows
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>