Commit Graph

2323 Commits

Author SHA1 Message Date
Julien Olivain
ec694f8f6d package/fwts: bump to version 26.03.00
See release announces:
26.01.00: https://lists.ubuntu.com/archives/fwts-devel/2026-January/014129.html
26.03.00: https://lists.ubuntu.com/archives/fwts-devel/2026-March/014171.html

The website [1] is no longer working. This commit updates FWTS_SITE
to use Github [2], which is now the primary download site in the
release announce.

This commit also rewrote the package patch (to add a new
--disable-werror configure option), which was proposed upstream.
This new option is added in FWTS_CONF_OPTS. With this patch now
proposed upstream, the corresponding .checkpackageignore entry
is also removed.

The license hash is also updated, after a year update in [3].

The fwts efi_runtime kernel module has been removed upstream,
in commit [4]. It is replaced by the Kernel driver efi_test, present
since Kernel v4.9, introduced in commit [5]. This commit removes the
option and updates the runtime test accordingly. A note is added in the
Config.in package help.

Fixes:
https://autobuild.buildroot.org/results/859390dbd2a1d7b3bf43588a461a2ff7dc66f92b/

[1] https://fwts.ubuntu.com/
[2] https://github.com/fwts/fwts
[3] b3cd64e61d
[4] 6d52a62169
[5] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=ff6301dabc3ca20ab8f50f8d0252ac05da610d89

Signed-off-by: Julien Olivain <ju.o@free.fr>
[Romain: add a comment for FWTS_AUTORECONF = YES]
Signed-off-by: Romain Naour <romain.naour@smile.fr>
2026-05-17 23:47:48 +02:00
Dowan Gullient
ba604325c4 support/testing: test_file_capabilities: Fix build failure
Buildroot commit [1] updated the Kernel for this test, but forgot to
add the "arm/" prefix for the dtb path. Since Linux 6.5, .dts files
have been moved to "arch/arm/boot/dts/" and the test was not able to
find the file anymore, which caused the build to fail.

Fixes:
https://gitlab.com/buildroot.org/buildroot/-/jobs/14297955524

[1] 74e7e07f83

Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
[Julien: reword commit log]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-12 22:14:31 +02:00
dowan gullient
ea67c920a9 support/testing: test_aarch64_64k: Bump kernel version to last LTS (6.18)
Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-05 23:18:13 +02:00
dowan gullient
dca70e0280 support/testing: test_rdma_core: Bump kernel version to last LTS (6.18)
Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-05 23:18:13 +02:00
dowan gullient
fb8cf6f819 support/testing: test_distribution_registry: Bump kernel version to last LTS (6.18)
Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-05 23:18:13 +02:00
dowan gullient
0a6acfaf9a support/testing: test_fluidsynth: Bump kernel version to last LTS (6.18)
Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-05 23:18:13 +02:00
dowan gullient
16deb8ef0a support/testing: test_openjdk: Bump kernel version to last LTS (6.18)
And updates the kernel version used for the test_openjdk test to
the last LTS version (6.18.21). instead of 5.10.3, which is quite
old and may not be compatible with the latest OpenJDK versions.

This change was tested by running the openjdk test.

Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-05 23:18:13 +02:00
dowan gullient
bef725272d support/testing: test_systemd: Bump kernel version to last LTS (6.18)
Update the Device Tree name for the vexpress platform to match the
new directory structure introduced in Linux 6.5.

Since kernel 6.5, the 'arch/arm/boot/dts/' directory was restructured
to avoid having thousands of files in a single folder. Device Trees
for ARM (32-bit) are now organized into subdirectories. For the
Versatile Express platform, the DTS file moved to the 'arm/'
subdirectory.

The build was failing with:

    make[3]: *** No rule to make target 'arch/arm/boot/dts/vexpress-v2p-ca9.dtb'. Stop.

Adjust BR2_LINUX_KERNEL_INTREE_DTS_NAME from "vexpress-v2p-ca9" to
"arm/vexpress-v2p-ca9".

Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-05 23:18:13 +02:00
dowan gullient
a03eaaecb3 support/testing: test_octave: Bump kernel version to last LTS (6.18)
Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-05 23:18:13 +02:00
dowan gullient
6195e97d6e support/testing: test_lxc: Bump kernel version to last LTS (6.18)
Update the Device Tree name for the vexpress platform to match the
new directory structure introduced in Linux 6.5.

Since kernel 6.5, the 'arch/arm/boot/dts/' directory was restructured
to avoid having thousands of files in a single folder. Device Trees
for ARM (32-bit) are now organized into subdirectories. For the
Versatile Express platform, the DTS file moved to the 'arm/'
subdirectory.

The build was failing with:
make[3]: *** No rule to make target 'arch/arm/boot/dts/vexpress-v2p-ca9.dtb'. Stop.

Adjust BR2_LINUX_KERNEL_INTREE_DTS_NAME from "vexpress-v2p-ca9" to
"arm/vexpress-v2p-ca9".

Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-05 23:18:13 +02:00
dowan gullient
f65bfc6d80 support/testing: test_libjxl: Bump kernel version to last LTS (6.18)
Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-05 23:18:13 +02:00
dowan gullient
95718ccb88 support/testing: test_dtbocfg: Bump kernel version to last LTS (6.18)
Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-05 23:18:13 +02:00
dowan gullient
e6973a7c33 support/testing: test_systemd_selinux: Bump kernel version to last LTS (6.18)
Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-05 23:18:13 +02:00
dowan gullient
83dedeb2e1 support/testing: test_oci: Bump kernel version to last LTS (6.18)
Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-05 23:18:13 +02:00
dowan gullient
483dc0c099 support/testing: test_edk2: Bump kernel version to last LTS (6.18)
Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-05 23:18:13 +02:00
dowan gullient
f6ec5f69f6 support/testing: test_clang: ump kernel version to last LTS (6.18)
Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-05 23:18:13 +02:00
dowan gullient
069e280ec7 support/testing: test_glxinfo: Bump kernel version to last LTS (6.18)
Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-05 23:18:13 +02:00
dowan gullient
3430d8200e support/testing: test_docker_compose: Bump kernel version to last LTS (6.18)
This commit bump the kernel version of this docker test (5.4->6.18), and thus
fixes several issues preventing the Docker Compose runtime test from
succeeding due to this bump:

Kernel Infrastructure:
   The Docker daemon failed to start because the 'nat' table could not
   be initialized. This was due to missing legacy Netfilter support.
   - Enable CONFIG_NETFILTER_XTABLES_LEGACY to support iptables nat table.
   - Enable CONFIG_NAMESPACES and CONFIG_USER_NS for container isolation.
   - Enable CONFIG_TUN and CONFIG_VETH for container networking.
   - Enable CONFIG_IKCONFIG and CONFIG_IKCONFIG_PROC for easier debugging.

Build Fixes:
   While building the kernel tools, the libelf header was missing because
   objtool was not handled correctly for this kernel version. This resulted
   in a fatal error: "gelf.h: No such file or directory".
   - Select BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y to build host-libelf.

Resources and Stability:
   The previous 512MB of RAM was tight for the stack (Kernel +
   Docker + Containerd + Python), potentially leading to Out-Of-Memory kills.
   Idem for the disk size for Docker images/layers storage.
   - Increase QEMU RAM to 1024MB (-m 1024M).
   - Increase rootfs size to 1024MB.
   - Switch to EXT4 (BR2_TARGET_ROOTFS_EXT2_4=y) for better stability
     and modern feature support required by Docker's storage drivers.

Test Script Adjustments:
   - Update rootfs path in the test script to point to rootfs.ext4.

Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-05 23:18:12 +02:00
dowan gullient
64944bcf64 support/testing: test_iso9660: Bump kernel version to last LTS (6.18)
Update the kernel configuration to support modern storage stacks
required for ISO booting on x86_64.

The transition from 4.19 to 6.18 requires explicit activation of:
- CONFIG_PCI: To discover the emulated IDE/SATA controllers.
- CONFIG_ATA & CONFIG_ATA_PIIX: Modern libATA drivers for QEMU's
  chipset (replacing the legacy IDE subsystem).
- CONFIG_SCSI & CONFIG_BLK_DEV_SR: Necessary to handle the CD-ROM
  as a SCSI device (/dev/sr0), which is mandatory for ISO9660.

Without these options, the kernel cannot locate or mount the
rootfs from the ISO image.

Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-05 23:18:12 +02:00
dowan gullient
2367805ec2 support/testing: test_f2fs: Kernel version bump LTS (6.18)
Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-05 23:18:12 +02:00
dowan gullient
74e7e07f83 support/testing: test_file_capabilities: Kernel version bump LTS (6.18)
Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-05 23:18:12 +02:00
dowan gullient
9b93856d2d support/testing: test_grub: Kernel update bump to last LTS (6.18)
BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y :
While building the kernel tools, libelf header is missing because objtools
was not compiled by default on older kernel versions. This results in the following error:

[...]tools/objtool/include/objtool/elf.h:10:10: fatal error: gelf.h: No such file or directory
   10 | #include <gelf.h>

That is why BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF was selected to build host-libelf.

Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
[Julien: updated kernel to 6.18.21]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-05-05 23:18:12 +02:00
Fiona Klute
8cde69e101 support/scripts/pkg-stats: run main function only if called as script
The __name__ == '__main__' guard allows importing pkg-stats as a
module using importlib, circumventing the normal module filename
requirements. This in turn makes it possible to test/debug individual
functions.

Signed-off-by: Fiona Klute <fiona.klute@gmx.de>
Signed-off-by: Arnout Vandecappelle <arnout@rnout.be>
2026-05-05 21:53:31 +02:00
Fiona Klute
07f7ad9898 support/scripts/pkg-stats: don't buffer whole file searching for infra
The file handle can be iterated over directly and each line is used
exactly once, so the only effect of reading all lines into a list
first was higher memory use and complexity.

Signed-off-by: Fiona Klute <fiona.klute@gmx.de>
Signed-off-by: Arnout Vandecappelle <arnout@rnout.be>
2026-05-05 21:53:30 +02:00
Fiona Klute
e8dcebf459 support/scripts/pkg-stats: fix host/target infra filter
The filter is supposed to exclude host/target infra from output if the
respective package is not built with the current
configuration.

However, excluding host packages did not work correctly: If keep_host
is False because the host package is not built, the next branch was
checked and included the host infra in output with "target" type if
the target package is built. For a package that support host and
target build, but gets built only for the target, this leads to output
like (Meson example):

meson (target)
host-meson (target)

Skip host infra in the target branch instead. Also include
Package.infra in Package.__str__() result, which was needed for
debugging this bug.

Signed-off-by: Fiona Klute <fiona.klute@gmx.de>
Signed-off-by: Arnout Vandecappelle <arnout@rnout.be>
2026-05-05 21:53:29 +02:00
Fiona Klute
7961bd10b9 support/scripts/pkg-stats: format upstream URL info consistently in HTML
Use only one of the classes for "error" or "warning" status so they
look different, and format the error/warning text for both. Do not
make the text a link if the URL is None.

Signed-off-by: Fiona Klute <fiona.klute@gmx.de>
Signed-off-by: Arnout Vandecappelle <arnout@rnout.be>
2026-05-05 21:53:26 +02:00
Fiona Klute
77a464969c support/scripts/pkg-stats: search only Config.in{, .host} for URL
The previous Config.* glob also caught linux/Config.ext.in and
package/php/Config.ext, as well as some backup files created by
editors (e.g. Config.in~ after editing a Config.in file in Emacs),
leading to wrong results depending on directory listing order.

Also use "with" to automatically close the file when the block is
left, even on error.

Signed-off-by: Fiona Klute <fiona.klute@gmx.de>
Signed-off-by: Arnout Vandecappelle <arnout@rnout.be>
2026-05-05 21:53:25 +02:00
Fiona Klute
986a30bf9b package/kmod: enable dlopen() for compression libraries (if any)
With dlopen() enabled, kmod will load compression libraries only if
actually needed (loading compressed modules into the kernel does not
if the kernel can handle decompression, depending on its
configuration), and only the needed one.

Use compressed modules in the kmod test without enabling in-kernel
decompression to verify decompression in kmod works.

Signed-off-by: Fiona Klute <fiona.klute@gmx.de>
Signed-off-by: Marcus Hoffmann <buildroot@bubu1.eu>
2026-05-05 11:42:43 +02:00
Fiona Klute
d7a7a35f58 support/testing/tests/package/test_kmod.py: use current 6.6.x kernel
Signed-off-by: Fiona Klute <fiona.klute@gmx.de>
Signed-off-by: Marcus Hoffmann <buildroot@bubu1.eu>
2026-04-30 13:59:41 +02:00
Maxin John
4d5ccd553a package/mdadm: bump to version 4.6
Drop upstreamed/backported patches.

Release announcements:
4.6: https://lore.kernel.org/linux-raid/CALTww2_2pjjOSsVj-WT++m35555CjnPWokU7fut+HwUJVV-=ZQ@mail.gmail.com/
4.5: https://lore.kernel.org/linux-raid/CALTww293wnLE2+eZsZ42oyNZhS_cc2agB4GNqTz8j3xiP0ALWA@mail.gmail.com/
4.4: https://lore.kernel.org/linux-raid/20241213121438.7ed6a0fd@mtkaczyk-private-dev/

Upstream mdadm project has moved its primary development to GitHub:
https://github.com/md-raid-utilities/mdadm
Updated download site accordingly. See:
https://git.kernel.org/pub/scm/utils/mdadm/mdadm.git/commit/README.md?id=3f90be087fa62c0c7ed76c2ac26752f0ac3a89e7

mdadm >= 4.5 removed fallback definitions for MD_DISK_FAILFAST
(commit f5889f9a1b8753a1472dfef9d025da2bae395239), relying on
kernel headers instead.This breaks builds with toolchains using older headers
(e.g. 4.9). So, enforce BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_10.

Since mdadm 4.6, `mdadm --create` may prompt for bitmap configuration,
which breaks the runtime test.Fix the test by passing `--bitmap=none`
to keep it non-interactive.

Signed-off-by: Maxin John <maxin.john@gmail.com>
[Julien:
 - add comment in Config.in
 - add link to upstream commit for repository change in commit log
]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-04-26 17:40:24 +02:00
Vincent Cruz
f3d0050e3d package/python-transitions: new package
Lightweight finite state machine implementation in Python.

https://github.com/pytransitions/transitions

Signed-off-by: Vincent Cruz <mooz@blockos.org>
[Julien:
 - remove directory for LICENSE in hash file
 - remove PKG-INFO entry in hash file
]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-04-14 22:40:53 +02:00
Petr Vorel
fc6377f7f9 package/ltp-testsuite: bump version to 20260130
For changelog, see [1].

Also, kirk removed update the "--framework ltp" option in [1]
and "--sut host" in [2]. This commit updates the test_ltp_testsuite
runtime test to remove those options to reflect those changes.

[1] https://github.com/linux-test-project/ltp/releases/tag/20260130
[2] 818abbb90e
[3] d2761ce865

Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
[Julien:
 - add link to changelog
 - update test_ltp_testsuite.py
]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-03-30 21:48:19 +02:00
Franciszek Stachura
aa2d71ac38 support/testing: add memcached test
Add a basic runtime test for memcached. The test starts memcached and
checks if it responds to a basic set/get request.

Signed-off-by: Franciszek Stachura <fbstachura@gmail.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-03-29 19:21:34 +02:00
Xukai Wang
b647b0c95d support/testing: add python-gymnasium tests
Add a basic runtime test for the python-gymnasium package.
This test verifies the fundamental operations of the library by:
- Importing `gymnasium`.
- Creating a "CartPole-v1" environment.
- Resetting the environment.
- Taking a random action step.
- Closing the environment.

Signed-off-by: Xukai Wang <kingxukai@zohomail.com>
[Julien:
 - sort DEVELOPERS entries alphabetically
 - fix file name typo in DEVELOPERS
 - remove selection of dependencies in test config
]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-03-29 12:57:57 +02:00
Xukai Wang
6e6597de21 support/testing: add python-farama-notifications tests
Add a basic runtime test for the python-farama-notifications package.
This test verifies that the `farama_notifications` package can be
imported successfully and that a test notification can be stored
within its `notifications` dictionary-like object.

Signed-off-by: Xukai Wang <kingxukai@zohomail.com>
[Julien:
 - sort DEVELOPERS entries alphabetically
 - remove underscore in test class name
]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-03-29 12:55:44 +02:00
Xukai Wang
d25f18a3c3 support/testing: add python-cloudpickle tests
Add a basic runtime test for the python-cloudpickle package.
This test verifies the fundamental serialization capabilities of the
library by:
- Importing `cloudpickle`.
- Defining a simple Python function (fibonacci).
- Using `cloudpickle.dumps()` to serialize this function.

Signed-off-by: Xukai Wang <kingxukai@zohomail.com>
[Julien: fix flake8 warnings to fix check-package errors]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-03-29 12:30:35 +02:00
Julien Olivain
9d29863c5e support/testing: ndctl: new runtime test
Cc: Chen Pei <cp0613@linux.alibaba.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-03-25 21:12:20 +01:00
Julien Olivain
f163d20002 support/testing: test_aichat: improve test reliability
Since llama.cpp update in Buildroot commit [1], the test_aichat can
fail for several reasons:

The loop checking for the llama-server availability can fail if curl
succeed, but the returned json data is not formatted as expected.
This can happen if the server is ready but the model is not completely
loaded. In that case, the server returns:

    {"error":{"message":"Loading model","type":"unavailable_error","code":503}}

This commit ignore Python KeyError exceptions while doing the
server test, to avoid failing if this message is received.

Also, this new llama-server version introduced a prompt caching, which
uses too much memory. This commit completely disable this prompt
caching by adding "--cache-ram 0" in the llama-server options.

[1] 05c36d5d87

Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-03-19 21:54:12 +01:00
Joseph Kogut
05c36d5d87 package/llama-cpp: bump to version b8117
Release notes: https://github.com/ggml-org/llama.cpp/releases

Merge BR2_PACKAGE_LLAMA_CPP_SERVER into BR2_PACKAGE_LLAMA_CPP_TOOLS, as
both of these options must be enabled to build tools like llama-cli and
llama-server. See upstream commit [1].

Since the Buildroot option BR2_PACKAGE_LLAMA_CPP_SERVER is removed, this
commit also removes it from support/testing/tests/package/test_aichat.py
which was using it.

[1] a180ba78c7

Signed-off-by: Joseph Kogut <joseph.kogut@gmail.com>
[Julien:
 - reindent options in .mk
 - remove BR2_PACKAGE_LLAMA_CPP_SERVER in test_aichat.py
]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-03-18 22:01:23 +01:00
Fabien Lehoussel
ac466d4b1a cve-check: fix CVE URL format
Update NVD source to full URL format following CycloneDC 1.6
specification [1].

Before: "url": "https://nvd.nist.gov/"
After:  "url": "https://nvd.nist.gov/vuln/detail/CVE-XXXX"

[1] https://cyclonedx.org/docs/1.6/json/#vulnerabilities_items_source_url

Signed-off-by: Fabien Lehoussel <fabien.lehoussel@smile.fr>
Acked-By: Thomas Perale <thomas.perale@mind.be>
Signed-off-by: Romain Naour <romain.naour@smile.fr>
2026-03-17 22:09:41 +01:00
Yann E. MORIN
e190962f3e package/python-humanfriendly: new package
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Cc: Romain Naour <romain.naour@smile.fr>
Cc: James Hilliard <james.hilliard1@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yegor Yefremov <yegorslists@googlemail.com>
[Julien:
 - add DEVELOPERS entry
 - fix test class name
]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-03-16 22:34:53 +01:00
Vincent Stehlé
7428907828 support/testing: bump test_atf u-boot to fix the build
Python setuptools has removed the obsolete pkg_resources python module in
v82.0.0. This module is used by the binman command in U-Boot until
v2025.10.
Since the python-setuptools package has been updated to v82.0.0 in
Buildroot, the python test tests.boot.test_atf.TestATFAllwinner (using
U-Boot v2023.10 and binman) fails to build with the following error [1]:

  ModuleNotFoundError: No module named 'pkg_resources'

Update test_atf to use a more recent U-Boot v2026.01 (and add the
dependency on GNU TLS), to fix the build.

Link: https://gitlab.com/buildroot.org/buildroot/-/jobs/13500946337 [1]
Fixes: 51365ff063 ("package/python-setuptools: bump to version 82.0.0")
Signed-off-by: Vincent Stehlé <vincent.stehle@arm.com>
Cc: James Hilliard <james.hilliard1@gmail.com>
Cc: Julien Olivain <ju.o@free.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-03-16 21:14:50 +01:00
Julien Olivain
c1bc1a7a61 support/testing: fs: new xfs runtime test
Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Romain Naour <romain.naour@smile.fr>
2026-03-13 23:30:06 +01:00
Julien Olivain
c03712d8ec support/testing: test_xfsprogs: use bootlin toolchain, update kernel
This commit updates the test configuration to switch to a Bootlin
external toolchain. This is needed to get newer toolchain kernel
headers required by newer xfsprogs versions.

xfsprogs upstream commit [1] (included in v6.15) introduced a usage
of the "capacity" field of zoned block devices, introduced in Kernel
commit [2], first included in v5.9.

This commit also updates the runtime test Kernel version
to the LTS 6.18.18. This is because the default filesystem options
of mkfs.xfs were updated in upstream commit [3] to include new
features supported in the new Kernel 6.18.y LTS series. The commit [3]
is included in xfsprogs v6.18.

[1] https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/commit/?id=48ccc2459039309cfbaf358febea53a86f07827c
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=82394db7383d33641f3f565bd79792fb41b1741f
[3] https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/commit/?id=54aad16b4b9b923442b4042afaba4438ca1aa868

Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Romain Naour <romain.naour@smile.fr>
2026-03-13 23:29:45 +01:00
Yann E. MORIN
f9cdca48a5 docs/manual: use space-separated list for BR2_EXTERNAL
Specifying a list of br2-external trees is poorly documented, and the
only example uses a colon to separate the br2-external paths.

Adding the support for colon-separated list is the biggest mistake that
was made when introducing support for multiple br2-external [0]. Indeed,
both space and colon can be used to separate entries in the list, and it
is also possible to mix the two. However, internally, the list is stored
as a space-separated list, and all the code will split on spaces.

Besides, all other lists in Buildroot are a space-separated:
    BR2_ROOTFS_DEVICE_TABLE
    BR2_ROOTFS_STATIC_DEVICE_TABLE
    BR2_TARGET_TZ_ZONELIST
    BR2_ROOTFS_USERS_TABLES
    BR2_ROOTFS_OVERLAY
    BR2_ROOTFS_PRE_BUILD_SCRIPT
    BR2_ROOTFS_POST_BUILD_SCRIPT
    BR2_ROOTFS_POST_FAKEROOT_SCRIPT
    BR2_ROOTFS_POST_IMAGE_SCRIPT
    ...

So, using colons is odd.

The fact that BR2_EXTERNAL is passed on the command line rather than
being a Kconfig item is not a reason enough to justify that it be
colon-separated.

Change the documentation to only mention using a space-separated list.

Of course, for backward compatibility, we keep the code as-is to accept
a colon-separated list, but we just do not advertise it.

Note that keeping the split on colons means that colons are not accepted
in pathnames of br2-external trees; in practice, this is not a new
restriction, or one that could lift as usign colons in Makefiles are
problematic anyway.

[0] in 20cd497387 core: add support for multiple br2-external trees

Reported-by: Fiona Klute (WIWA) <fiona.klute@gmx.de>
Reported-by: Brandon Maier <Brandon.Maier@collins.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Romain Naour <romain.naour@smile.fr>
2026-03-13 22:12:18 +01:00
Yann E. MORIN
72e068001b support/br2-external: fix remaining shellcheck errors
Boring changes: either do what shellcheck suggested, or comment why we
don't want to fix the code.

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Signed-off-by: Romain Naour <romain.naour@smile.fr>
2026-03-13 22:12:16 +01:00
Yann E. MORIN
244e4283a9 support/br2-external: remove leftover trap
The trap was initially introduced in c5fa9308ea (core/br2-external:
properly report unexpected errors), in 2017, to catch all unexpected
errors, back when a single file was generated, and errors emitted to
stderr.

Since commit d027cd75d0 (core: generate all br2-external files in
one go), in 2019 the single output file 'ofile' is no longer created,
as multiple output files were then introduced, while messages for
*expected errors* were redirected to a Makefile variable assignment
emitted on stdout, at which point the script just exits (in error);
expected failures only occur in do_validate().

Unexpected errors can only occur on failure to create, or write to,
output files, either '.br2-external.mk' in do_validate() or do_mk(),
or any of the kconfig fragments in do_kconfig(). Cause for failure to
create those can only be a no-space-left-on-device condition, as they
are created in a directory that was just created by the script earlier
in main(), and thus has the necessary mode; failure to create that
directory is now caught explicitly.

A trap on ERR is not called when the shell exits explicitly with a call
to 'exit', thus, only failures to create or write to output file would
be caught. In that case, we are better off not trying to write to those
files anyway: failure to create the file would already be reported by
the shell on stderr, while disk-full would not allow to store the output
anyway...

In any case, the script exits in error, which is going to be caught by
the caller, which will terminate.

So, drop the trap altogether.

As a side effect, that squelches a shellcheck error.

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Signed-off-by: Romain Naour <romain.naour@smile.fr>
2026-03-13 22:12:15 +01:00
Julien Olivain
e55952b173 support/testing: test_connman: new runtime test
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-03-12 19:31:05 +01:00
Bernd Kuhls
25cb3813e7 package/llvm-project: bump version to 22.1.0
Subproject tarballs are not provided anymore:
https://discourse.llvm.org/t/llvm-22-1-0-released/89950
"Please note since the last release the subproject tarballs have been
 removed"
https://discourse.llvm.org/t/rfc-do-something-with-the-subproject-tarballs-in-the-release-page/75024/14

Used upstream tarball llvm-project-22.1.0.src.tar.xz for all packages
and linked subproject hash files to ../llvm-project.hash.

Removed patches which fix build errors caused by subproject tarballs.

Removed handling of third-party-21.1.8.src.tar.xz which is included in
the monolithic tarball.

Added _SUBDIR variable or updated _INSTALL_CMDS when needed.

For compiler-rt:

Removed both patches, they are not needed anymore.

Added patch to fix aarch64 build.

Added dependency on gcc >= 15.x because libcxx now depends on gcc >=
15.x: https://github.com/llvm/llvm-project/pull/165684
  warning "Libc++ only supports GCC 15 and later"

Building with gcc 14.x causes many build errors like

output/build/compiler-rt-22.1.0/compiler-rt/buildroot-build/lib/fuzzer/libcxx_fuzzer_x86_64/build/include/c++/v1/__type_traits/is_array.h:43:68:
 error: expected primary-expression before ')' token

output/build/compiler-rt-22.1.0/compiler-rt/buildroot-build/lib/fuzzer/libcxx_fuzzer_x86_64/build/include/c++/v1/__type_traits/is_array.h:43:44:
 error: there are no arguments to '__is_unbounded_array' that depend on
 a template parameter, so a declaration of '__is_unbounded_array' must
 be available [-fpermissive]

output/build/compiler-rt-22.1.0/compiler-rt/buildroot-build/lib/fuzzer/libcxx_fuzzer_x86_64/build/include/c++/v1/__type_traits/decay.h:22:32:
 error: expected type-specifier before '__decay'

A corresponding bug report sent upstream
https://github.com/llvm/llvm-project/issues/174203

was answered:
https://github.com/llvm/llvm-project/issues/174203#issuecomment-3711113919
"Our policy is rather clear: Only the latest GCC is supported."

and an update to supported compiler versions was committed:
d1146b1ddd

Updated TestClangCompilerRT to use a gcc 15-based toolchain.

Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-03-10 19:11:18 +01:00
Dowan Gullient
8313d8a2fa support/testing/infra: update artifacts URL to https and .org domain
The artifacts URL has been moved to https and domain to .org to
improve security and avoid redirection issues. This ensures that
downloads of kernels and rootfs images during runtime tests are
encrypted and verified.

The change has been tested by running a runtime test, confirming the
correct download and renaming of artifacts from the new URL:

    Downloading to .../tmpyotq8uor
    Renaming from .../tmpyotq8uor to .../kernel-versatile-5.10.202

Signed-off-by: Dowan Gullient <dowan.gullient@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2026-03-06 19:17:59 +01:00