Complete Yocto mirror with license table for TQMa6UL (2038-compliance)
- 264 license table entries with exact download URLs (224/264 resolved) - Complete sources/ directory with all BitBake recipes - Build configuration: tqma6ul-multi-mba6ulx, spaetzle (musl) - Full traceability for Softwarefreigabeantrag - GCC 13.4.0, Linux 6.6.102, U-Boot 2023.04, musl 1.2.4 - License distribution: GPL-2.0 (24), MIT (23), GPL-2.0+ (18), BSD-3 (16)
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
#!/bin/sh
|
||||
|
||||
testbins="gpiod-test gpio-tools-test gpiod-cxx-test gpiod_py_test.py"
|
||||
|
||||
ptestdir=$(dirname "$(readlink -f "$0")")
|
||||
cd $ptestdir/tests
|
||||
|
||||
for testbin in $testbins; do
|
||||
if test -e ./$testbin; then
|
||||
./$testbin > ./$testbin.out 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "FAIL: $testbin"
|
||||
else
|
||||
echo "PASS: $testbin"
|
||||
fi
|
||||
else
|
||||
echo "SKIP: $testbin"
|
||||
fi
|
||||
done
|
||||
@@ -0,0 +1,38 @@
|
||||
From 8c7126b7b5dee0ed5433cf9265ccc79095d53939 Mon Sep 17 00:00:00 2001
|
||||
From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
|
||||
Date: Mon, 8 Jul 2024 11:48:27 +0200
|
||||
Subject: [PATCH] bindings: cxx: tests: set direction when reconfiguring lines
|
||||
|
||||
Linux kernel commit b44039638741 ("gpiolib: cdev: Ignore reconfiguration
|
||||
without direction") made the direction setting mandatory for line config
|
||||
passed to the kernel when reconfiguring requested lines. Fix the C++ test
|
||||
case which doesn't do it and now fails due to the rest of the settings
|
||||
being ignored.
|
||||
|
||||
Reviewed-by: Kent Gibson <warthog618@gmail.com>
|
||||
Link: https://lore.kernel.org/r/20240708094827.84986-1-brgl@bgdev.pl
|
||||
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
|
||||
|
||||
Upstream-Status: Backport
|
||||
[https://web.git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/commit/?id=3e224d885b1de54fe5510b9c5e7296260a1a4507]
|
||||
|
||||
Signed-off-by: Libo Chen <libo.chen.cn@windriver.com>
|
||||
---
|
||||
bindings/cxx/tests/tests-line-request.cpp | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/bindings/cxx/tests/tests-line-request.cpp b/bindings/cxx/tests/tests-line-request.cpp
|
||||
index 9632ae0..6e29532 100644
|
||||
--- a/bindings/cxx/tests/tests-line-request.cpp
|
||||
+++ b/bindings/cxx/tests/tests-line-request.cpp
|
||||
@@ -208,6 +208,7 @@ TEST_CASE("values can be read", "[line-request]")
|
||||
.add_line_settings(
|
||||
offs,
|
||||
::gpiod::line_settings()
|
||||
+ .set_direction(direction::INPUT)
|
||||
.set_active_low(true))
|
||||
);
|
||||
|
||||
--
|
||||
2.44.1
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
#!/bin/sh
|
||||
|
||||
testbins="gpiod-test gpio-tools-test.bash gpiod-cxx-test"
|
||||
|
||||
ptestdir=$(dirname "$(readlink -f "$0")")
|
||||
cd $ptestdir/tests
|
||||
|
||||
# libgpiod v2 uses gpio-sim - a configfs-based testing module. We need to
|
||||
# make sure configfs is mounted before running any tests.
|
||||
modprobe configfs
|
||||
mountpoint /sys/kernel/config > /dev/null || mount -t configfs configfs /sys/kernel/config
|
||||
|
||||
for testbin in $testbins; do
|
||||
if test -e ./$testbin; then
|
||||
./$testbin > ./$testbin.out 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "FAIL: $testbin"
|
||||
else
|
||||
echo "PASS: $testbin"
|
||||
fi
|
||||
else
|
||||
echo "SKIP: $testbin"
|
||||
fi
|
||||
done
|
||||
@@ -0,0 +1,60 @@
|
||||
SUMMARY = "C library and tools for interacting with the linux GPIO character device"
|
||||
RECIPE_MAINTAINER = "Bartosz Golaszewski <brgl@bgdev.pl>"
|
||||
|
||||
inherit autotools pkgconfig ptest
|
||||
|
||||
SRC_URI += " \
|
||||
https://www.kernel.org/pub/software/libs/libgpiod/libgpiod-${PV}.tar.xz \
|
||||
file://run-ptest \
|
||||
"
|
||||
|
||||
PACKAGECONFIG[cxx] = "--enable-bindings-cxx,--disable-bindings-cxx"
|
||||
|
||||
# Enable cxx bindings by default.
|
||||
PACKAGECONFIG ?= " \
|
||||
cxx \
|
||||
${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \
|
||||
"
|
||||
|
||||
# Always build tools - they don't have any additional
|
||||
# requirements over the library.
|
||||
EXTRA_OECONF = "--enable-tools"
|
||||
|
||||
DEPENDS += "autoconf-archive-native"
|
||||
|
||||
PACKAGES =+ "${PN}-tools libgpiodcxx"
|
||||
FILES:${PN}-tools += " \
|
||||
${bindir}/gpiodetect \
|
||||
${bindir}/gpioinfo \
|
||||
${bindir}/gpioget \
|
||||
${bindir}/gpioset \
|
||||
${bindir}/gpiomon \
|
||||
"
|
||||
FILES:libgpiodcxx = "${libdir}/libgpiodcxx.so.*"
|
||||
|
||||
RRECOMMENDS:${PN}-ptest += "coreutils"
|
||||
|
||||
do_install:append() {
|
||||
rm -f ${D}${bindir}/gpiod-test
|
||||
rm -f ${D}${bindir}/gpio-tools-test
|
||||
rm -f ${D}${bindir}/gpio-tools-test.bats
|
||||
rm -f ${D}${bindir}/gpiod-cxx-test
|
||||
}
|
||||
|
||||
do_install_ptest() {
|
||||
install -d ${D}${PTEST_PATH}/tests/
|
||||
|
||||
# These are the core C library tests
|
||||
install -m 0755 ${B}/tests/.libs/gpiod-test ${D}${PTEST_PATH}/tests/
|
||||
|
||||
# Tools are always built so let's always install them for ptest even if
|
||||
# we're not selecting libgpiod-tools.
|
||||
for tool in ${FILES:${PN}-tools}; do
|
||||
install ${B}/tools/.libs/$(basename $tool) ${D}${PTEST_PATH}/tests/
|
||||
done
|
||||
|
||||
if ${@bb.utils.contains('PACKAGECONFIG', 'cxx', 'true', 'false', d)}; then
|
||||
install -m 0755 ${B}/bindings/cxx/tests/.libs/gpiod-cxx-test ${D}${PTEST_PATH}/tests/
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
require libgpiod.inc
|
||||
|
||||
LICENSE = "LGPL-2.1-or-later"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=2caced0b25dfefd4c601d92bd15116de"
|
||||
|
||||
SRC_URI[sha256sum] = "7b146e12f28fbca3df7557f176eb778c5ccf952ca464698dba8a61b2e1e3f9b5"
|
||||
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}-1.x:"
|
||||
|
||||
inherit python3native
|
||||
|
||||
PACKAGECONFIG[tests] = "--enable-tests,--disable-tests,kmod udev glib-2.0 catch2"
|
||||
PACKAGECONFIG[python3] = "--enable-bindings-python,--disable-bindings-python,python3"
|
||||
|
||||
# Always build tools - they don't have any additional
|
||||
# requirements over the library.
|
||||
EXTRA_OECONF = "--enable-tools"
|
||||
|
||||
PACKAGES =+ "${PN}-python"
|
||||
FILES:${PN}-tools += "${bindir}/gpiofind"
|
||||
FILES:${PN}-ptest += " \
|
||||
${bindir}/gpiod_py_test.py \
|
||||
${libdir}/libgpiomockup.so.* \
|
||||
"
|
||||
FILES:${PN}-python = "${PYTHON_SITEPACKAGES_DIR}/*.so"
|
||||
FILES:${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/*.a"
|
||||
|
||||
RRECOMMENDS:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'python3', '${PN}-python', '', d)}"
|
||||
RRECOMMENDS:${PN}-ptest += " \
|
||||
kernel-module-gpio-mockup \
|
||||
${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3-unittest', '', d)} \
|
||||
"
|
||||
RDEPENDS:${PN}-ptest += " \
|
||||
python3-packaging \
|
||||
${@bb.utils.contains('PTEST_ENABLED', '1', 'bats', '', d)} \
|
||||
"
|
||||
|
||||
do_install_ptest:append() {
|
||||
install -m 0755 ${S}/tools/gpio-tools-test ${D}${PTEST_PATH}/tests/
|
||||
install -m 0755 ${S}/tools/gpio-tools-test.bats ${D}${PTEST_PATH}/tests/
|
||||
|
||||
if ${@bb.utils.contains('PACKAGECONFIG', 'python3', 'true', 'false', d)}; then
|
||||
install -m 0755 ${S}/bindings/python/tests/gpiod_py_test.py ${D}${PTEST_PATH}/tests/
|
||||
fi
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
require libgpiod.inc
|
||||
|
||||
LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later & CC-BY-SA-4.0"
|
||||
LIC_FILES_CHKSUM = " \
|
||||
file://LICENSES/GPL-2.0-or-later.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
|
||||
file://LICENSES/LGPL-2.1-or-later.txt;md5=4b54a1fd55a448865a0b32d41598759d \
|
||||
file://LICENSES/CC-BY-SA-4.0.txt;md5=fba3b94d88bfb9b81369b869a1e9a20f \
|
||||
"
|
||||
|
||||
SRC_URI += "file://0001-bindings-cxx-tests-set-direction-when-reconfiguring-.patch"
|
||||
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}-2.x:"
|
||||
|
||||
SRC_URI[sha256sum] = "7a148a5a7d1c97a1abb40474b9a392b6edd7a42fe077dfd7ff42cfba24308548"
|
||||
|
||||
# Enable all project features for ptest
|
||||
PACKAGECONFIG[tests] = "--enable-tests --enable-tools --enable-bindings-cxx --enable-gpioset-interactive,--disable-tests,kmod util-linux glib-2.0 catch2 libedit"
|
||||
PACKAGECONFIG[gpioset-interactive] = "--enable-gpioset-interactive,--disable-gpioset-interactive,libedit"
|
||||
|
||||
PACKAGES =+ "${PN}-ptest-dev"
|
||||
FILES:${PN}-tools += "${bindir}/gpionotify"
|
||||
FILES:${PN}-ptest += "${libdir}/libgpiosim.so.*"
|
||||
FILES:${PN}-ptest-dev += "${includedir}/gpiosim.h"
|
||||
|
||||
RDEPENDS:${PN}-ptest += " \
|
||||
${@bb.utils.contains('PTEST_ENABLED', '1', 'shunit2 bash', '', d)} \
|
||||
"
|
||||
RRECOMMENDS:${PN}-ptest += "kernel-module-gpio-sim kernel-module-configfs"
|
||||
|
||||
do_install_ptest:append() {
|
||||
install -m 0755 ${S}/tools/gpio-tools-test.bash ${D}${PTEST_PATH}/tests/
|
||||
install -m 0644 ${S}/tests/gpiosim/gpiosim.h ${D}${includedir}/gpiosim.h
|
||||
}
|
||||
Reference in New Issue
Block a user