Commit Graph

76606 Commits

Author SHA1 Message Date
Neal Frager
9efee8a646 configs/zynqmp_zcu104_defconfig: bump to Linux 6.6.70
This patch bumps the zynqmp_zcu104_defconfig to Linux kernel 6.6.70.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-02-26 18:51:08 +01:00
Neal Frager
05a957a6c3 configs/zynqmp_zcu102_defconfig: bump to Linux 6.6.70
This patch bumps the zynqmp_zcu102_defconfig to Linux kernel 6.6.70.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-02-26 18:50:57 +01:00
Kory Maincent
2cde9c1089 configs/octavo: Switch to Bootlin stable toolchain
Update the Octavo configurations to use the Bootlin glibc stable prebuilt
external toolchain, as recommended in the Buildroot meeting report from
ELCE 2024: https://elinux.org/Buildroot:DeveloperDaysELCE2024

Signed-off-by: Kory Maincent <kory.maincent@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-02-26 18:44:24 +01:00
Kory Maincent
864cb7ea29 board/octavo: Fix Linux compilation
Since commit dc0f7215c6 ("package/gcc: switch to 13.x as default"),
the Linux kernel is failing to build with this output:

In file included from ./include/linux/kernel.h:10,
                 from drivers/ata/libahci.c:35:
drivers/ata/libahci.c: In function ‘ahci_led_store’:
./include/linux/compiler.h:348:45: error: call to ‘__compiletime_assert_1154’ declared with attribute error: BUILD_BUG_ON failed: sizeof(_s) > sizeof(long)
   348 |         _compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)

Fix it by importing Linux upstream patch.

Signed-off-by: Kory Maincent <kory.maincent@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-02-26 18:29:18 +01:00
Kory Maincent
793b88a7ae board/octavo/osd32mp1: Fix TF-A build error
The Octavo defconfig currently uses TF-A version 2.4 from ST, which leads
to build errors due to missing patches. This update imports the necessary
TF-A 2.4 patches to ensure compatibility and resolve the build issues for
these boards.

Fixes:
https://gitlab.com/buildroot.org/buildroot/-/jobs/8751983324
https://gitlab.com/buildroot.org/buildroot/-/jobs/8751983326

Signed-off-by: Kory Maincent <kory.maincent@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-02-26 18:11:27 +01:00
Neal Frager
5f08591192 configs/zynq_zed_defconfig: bump to 6.6.70
This patch bumps the zynq_zed_defconfig to Linux kernel 6.6.70.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-02-26 15:41:05 +01:00
Neal Frager
9489f251ff configs/zynq_microzed_defconfig: bump to 6.6.70
This patch bumps the zynq_microzed_defconfig to Linux kernel 6.6.70.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-02-26 15:40:57 +01:00
Neal Frager
08380c47f7 configs/zynq_zc706_defconfig: bump to 6.6.70
This patch bumps the zynq_zc706_defconfig to Linux kernel 6.6.70.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-02-26 15:40:45 +01:00
Neal Frager
04fcc48a98 configs/zynq_zc702_defconfig: bump to 6.6.70
This patch bumps the zynq_zc702_defconfig to Linux kernel 6.6.70.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-02-26 15:40:40 +01:00
Neal Frager
17a905b7d7 board/xilinx: add hash for Linux 6.6.70
This patch adds the hash for Linux version 6.6.70 for Xilinx boards.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-02-26 15:40:28 +01:00
Andreas Naumann
fee61e3d8d DEVELOPERS: update email address for Andreas Naumann
Update my email address in the DEVELOPERS file.

Signed-off-by: Andreas Naumann <anaumann@ultratronik.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-02-26 15:39:06 +01:00
Thomas Devoogdt
139b580ca4 package/pkgconf: fix sysroot being prepended twice to the pkgdatadir path
When building webkit, I got this build error:

>>> webkitgtk 2.46.3 Building
GIT_DIR=. PATH="/home/thomas/br-test-pkg/bootlin-armv5-uclibc/host/bin:/home/thomas/br-test-pkg/bootlin-armv5-uclibc/host/sbin:/home/thomas/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin"
 /home/thomas/.local/bin/cmake --build
/home/thomas/br-test-pkg/bootlin-armv5-uclibc/build/webkitgtk-2.46.3/
-j25
ninja: error: '/home/thomas/br-test-pkg/bootlin-armv5-uclibc/host/arm-buildroot-linux-uclibcgnueabi/sysroot/home/thomas/br-test-pkg/bootlin-armv5-uclibc/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/share/wayland-protocols/unstable/pointer-constraints/pointer-constraints-unstable-v1.xml',
needed by 'WebKitGTK/DerivedSources/pointer-constraints-unstable-v1-protocol.c',
missing and no known rule to make it
make[1]: *** [package/pkg-generic.mk:289:
/home/thomas/br-test-pkg/bootlin-armv5-uclibc/build/webkitgtk-2.46.3/.stamp_built]
Error 1
make: *** [Makefile:83: _all] Error 2

The sysroot path is prepended twice to the path. This error persists
since a3b2bc8 "package/pkgconf: bump to version 2.3.0".

After digging into it, I found out that dropping "pkgdatadir" from the
patch does fix it. This is, in fact, the same, or similar problem that
was fixed in 3e74c13 "package/pkgconf: variable pkgdatadir also needs
sysroot prefixing, wayland patch III" years ago.

I was not able to find out which pkgconf commit caused the behavior
change. Commit a3b2bc8 bumped it from 1.6.3 to 2.3.0, which is a
considerable big change.

Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-02-26 13:08:14 +01:00
Scott Fan
9eeb8108c6 configs/beaglebone: bump Linux to 6.6.58-ti-arm32-r10 and U-Boot to 2025.01
The patch bumps the Linux kernel to version 6.6.58-ti-arm32-r10 and
U-Boot to version 2025.01.

Tested on beaglebone black.

Link: https://github.com/beagleboard/linux/releases/tag/6.6.58-ti-arm32-r10

Signed-off-by: Scott Fan <fancp2007@gmail.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-25 21:46:48 +01:00
Giulio Benetti
80b42e226a package/harfbuzz: bump to version 10.3.0
Release Notes:
https://github.com/harfbuzz/harfbuzz/releases/tag/10.3.0

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-25 21:15:30 +01:00
Flávio Tapajós
d577c1c339 package/python-sqlalchemy: bump to version 2.0.38
For change log, see:
https://docs.sqlalchemy.org/en/20/changelog/changelog_20.html#change-2.0.38

Signed-off-by: Flávio Tapajós <flavio.tapajos@newtesc.com.br>
[Julien: add link to change log]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-25 21:11:46 +01:00
Fiona Klute (WIWA)
84eed27629 package/libglib2: bump version to 2.82.5
This is a small bugfix release, the fix relevant for Buildroot is a
possible integer overflow when parsing ISO 8601 date/time strings:
https://gitlab.gnome.org/GNOME/glib/-/merge_requests/4499/diffs

Full upstream changelog, two other fixes are for macos, one related to
testing:
https://gitlab.gnome.org/GNOME/glib/-/blob/2.82.5/NEWS?ref_type=tags

Signed-off-by: Fiona Klute (WIWA) <fiona.klute@gmx.de>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-25 21:03:02 +01:00
Michael Nosthoff
0aa1b043df package/procps-ng: fix build with missing pidfd_open
port back patch introduced shortly after the 4.0.5 release.

Fixes:
  checking for __NR_pidfd_open... no
  configure: error: Neither pidfd_open or __NR_pidfd_open found. Disable pidwait with configure option --disable-pidwait

happening with this defconfig:

BR2_arm=y
BR2_cortex_a15_a7=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_INIT_SYSTEMD=y
BR2_PACKAGE_PROCPS_NG=y

Signed-off-by: Michael Nosthoff <buildroot@heine.tech>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-25 20:55:41 +01:00
Yann E. MORIN
c73fb46fea package/mokutil: fix dependencies of comment
Since the package was introduced in 2e6e121496 (package/mokutil: new
package), the dependencies for the comment about missing dependencies
are not all inverted compared to the actual dependencies.

Notably, gcc and headers versions should be negative, not positive,
dependencies. This makes the comment visible even when said dependencies
are met.

Fix that.

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Julien Olivain <ju.o@free.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-25 20:42:48 +01:00
Dario Binacchi
5a1515b597 package/armadillo: bump to version 14.4.0
Release notes:
https://arma.sourceforge.net/docs.html#changelog

Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-24 21:40:10 +01:00
Fabio Estevam
8e1693c1a5 configs/imx8mm-evk_defconfig: new defconfig
Add a new defconfig for the imx8mm-evk board that uses upstream
components, such as:

- Linux Kernel: Upstream version 6.12.16
- U-boot: Upstream version 2025.01
- ATF: Upstream version 2.12

Signed-off-by: Fabio Estevam <festevam@gmail.com>
Tested-by: Julien Olivain <ju.o@free.fr>
[Julien: Tested on board 700-31407 REV A1]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-24 21:33:00 +01:00
Fabio Estevam
5a74a007ab configs/imx8mn-ddr4-evk_defconfig: new defconfig
Add a new defconfig for the imx8mn-ddr4-evk board that uses upstream
components, such as:

- Linux Kernel: Upstream version 6.12.16
- U-boot: Upstream version 2025.01
- ATF: Upstream version 2.12

Signed-off-by: Fabio Estevam <festevam@gmail.com>
Tested-by: Julien Olivain <ju.o@free.fr>
[Julien: Tested on board 700-31407 REV A5]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-24 20:47:44 +01:00
Sébastien Szymanski
63f047971f package/wlr-randr: new package
Utility to manage outputs of a Wayland compositor.

Signed-off-by: Sébastien Szymanski <sebastien.szymanski@armadeus.com>
[Fiona:
  - fix build with uClibc
  - update to 0.5.0 with move to gitlab.freedesktop.org
]
Signed-off-by: Fiona Klute (WIWA) <fiona.klute@gmx.de>
[Julien: reorder DEVELOPERS entries alphabetically]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-24 19:16:38 +01:00
Thomas Devoogdt
544249ff77 package/fontconfig: fix build with toolchains without pthread
../test/test-crbug1004254.c:28:10: fatal error: pthread.h: No such file or directory
   28 | #include <pthread.h>
      |          ^~~~~~~~~~~

Commit cef7358 "package/fontconfig: fix compilation on targets without pthread support"
fixed compilation for targets without pthread support, but that was apparently nog enough.

Back then, I tested all the targets by using `./utils/test-pkg -p fontconfig -a`,
but somehow these targets didn't enable the fontconfig tests, so I didn't see this
compile failure. Fix it now by explicitly disabling the fontconfig tests.

Fixes:
 -  https://autobuild.buildroot.org/results/5f0/5f0c716c20788ba49a3a9f185251ded373a764cd/build-end.log

Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com>
[Julien: reword commit log title]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-23 21:49:13 +01:00
Marcin Niestroj
6faa08a9e3 package/python-dbus-fast: bump to 2.33.0
See [1] for changelog.

[1] https://github.com/bluetooth-devices/dbus-fast/blob/main/CHANGELOG.md

Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-23 21:30:04 +01:00
Thomas Bonnefille
ac83fdcb29 package/foot: support soft-float architecture
Architecture using soft float don't support the math FE_* exceptions.
This commit adds a patch to conditionnally build the FE_* exception
handling.

Fixes:
    https://autobuild.buildroot.org/results/88d/88d764dd12bdbdbe633ebc703c461ebe95b75693/

Signed-off-by: Thomas Bonnefille <thomas.bonnefille@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-23 21:17:09 +01:00
Neal Frager
fefb6a6785 package/pkg-autotools: remove redundant configs
Since the following commit:
b07030a708

The following host configs are included with $$(HOST_CONFIGURE_OPTS)
	CFLAGS="$$(HOST_CFLAGS)"
	LDFLAGS="$$(HOST_LDFLAGS)"

As they are redundant, we can remove them from the autotools infrastructure.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-23 18:44:53 +01:00
Sergey Kuzminov
41734e00c0 configs/friendlyarm_nanopi_r3s_defconfig: new defconfig
This patch adds basic support for the new FriendlyARM NanoPi R3S board:
 - https://www.friendlyelec.com/index.php?route=product/product&product_id=303
 - https://wiki.friendlyelec.com/wiki/index.php/NanoPi_R3S

Hardware Spec:
 - CPU: Rockchip RK3566, Quad-core Cortex-A55
 - RAM: 2GB LPDDR4X
 - Ethernet: one Native Gigabit Ethernet, and one PCIe Gigabit Ethernet
 - USB3.0 Host: Type-A x1
 - Storage: MicroSD Slot x 1, and on-board 32GB eMMC
 - Debug Serial Port: 3.3V TTL, 3-pin 2.54mm pitch connector, 1500000 bauds
 - LED: LED x 3
 - RTC: One low-power RTC, support backup battery input
 - Buttons: 1x User button, 1x MASK button for eMMC flashing via USB-C
 - Display: 1x MIPI-DSI 30-Pin FPC connector

BSP includes the following components:
 - mainline ATF v2.12
 - mainline U-Boot v2025.04-rc2
 - mainline Linux kernel v6.13.4

Note: this defconfig is using U-Boot v2025.04-rc2 because the
NanoPi R3S support was added in upstream commit [1] first included
in v2025.04-rc1.

[1] bf4a33e725

Signed-off-by: Sergey Kuzminov <kuzminov.sergey81@gmail.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-23 18:05:31 +01:00
Yann E. MORIN
ee91e37299 DEVELOPERS: fix cyclonedx script name
In commit dbab39e2d9 (support/scripts/generate-cyclonedx.py: add
script to generate CycloneDX-style SBOM), the script was renamed while
applying thr patch, but the entry in DEVELOPERS was not updated
accordingly:

    $ ./utils/docker-run ./utils/get-developers -v
    WARNING: 'utils/generate-cyclonedx.py' doesn't match any file, line 3179

Fix that.

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Thomas Perale <thomas.perale@mind.be>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-23 14:27:57 +01:00
Maxim Kochetkov
c8eb4c63a7 package/postgis: bump to version 3.5.2
Changelog: https://github.com/postgis/postgis/blob/3.5.2/NEWS

Signed-off-by: Maxim Kochetkov <fido_max@inbox.ru>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-23 14:17:50 +01:00
Raphaël Mélotte
1e8955e12c package/jbig2dec: bump to version 0.20
Starting from this version newer releases are only available at a new
dedicated repository, so the site is updated accordingly.

Hash files no longer exist in the new repo, so remove the related
comment.

It turns out that install-sh has been available in the tarball since
version 0.19, so remove JBIG2DEC_AUTORECONF.

Signed-off-by: Raphaël Mélotte <raphael.melotte@mind.be>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-23 13:53:28 +01:00
Waldemar Brodkorb
f8fb0b5942 package/zabbix: update to 7.2.3
See here for a changelog:
https://www.zabbix.com/rn/rn7.2.3

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-23 13:34:47 +01:00
Scott Fan
bee34e7bd0 package/timescaledb: bump version to 2.18.2
Release notes: https://github.com/timescale/timescaledb/blob/2.18.2/CHANGELOG.md

Signed-off-by: Scott Fan <fancp2007@gmail.com>
Reviewed-by: Maxim Kochetkov <fido_max@inbox.ru>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-23 13:23:03 +01:00
Bernd Kuhls
dd824f6254 package/qt6/qt6multimedia: fix ffmpeg configure option typo
Buildroot commit 553c55e9bd added this
package with a typo in the configure option to disable ffmpeg support.

Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-23 13:12:00 +01:00
Fabio Estevam
9d544ef3bd configs/imx8mp-evk_defconfig: new defconfig
Add a new defconfig for the imx8mp-evk board that uses upstream
components, such as:

- Linux Kernel: Upstream version 6.12.16
- U-boot: Upstream version 2025.01
- ATF: Upstream version 2.12

Based on bcc7993283 ("configs/polyhex_debix_model_a_defconfig: new
defconfig") from Gilles Talis.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
[Julien:
 - replace linux-headers.hash with a symlink to linux.hash
 - update kernel hash to 6.12.16 to match defconfig version
]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-23 12:23:48 +01:00
Fabio Estevam
7340b91a5e configs/polyhex_debix_model_a_defconfig: Remove BR2_PACKAGE_HOST_IMX_MKIMAGE
The BR2_PACKAGE_HOST_IMX_MKIMAGE is only needed when the NXP U-Boot
version is used.

polyhex_debix_model_a_defconfig uses mainline U-Boot, which builds flash.bin
directly, without using the NXP imx-mkimage tool.

Remove such unneeded package.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-23 11:58:07 +01:00
Fiona Klute (WIWA)
2578cf368e package/containerd: use --no-pie on musl
Disable PIE on musl to fix "read-only segment has dynamic relocations"
errors during linking [1] that appeared after major version bump to v2.

[1] https://github.com/golang/go/issues/17847

Fixes: 9c2e146ca9
Signed-off-by: Fiona Klute (WIWA) <fiona.klute@gmx.de>
Reviewed-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Romain Naour <romain.naour@smile.fr>
2025-02-22 22:21:39 +01:00
Fiona Klute (WIWA)
838a269b87 package/pkg-golang: use ld.bfd instead of ld.gold on aarch64
Go forces use of the Gold linker on aarch64 due to a bug in BFD that
is fixed in Binutils >= 2.41 (that includes all versions provided by
Buildroot). Forcing Gold will break with toolchains that don't provide
it (like the Buildroot toolchains), so override the flag and use BFD.

This override should be removed if Go stops forcing Gold, and may have
to be adapted if the set of available linkers changes (e.g. with a
future Binutils update).

See: https://github.com/golang/go/issues/22040

Fixes:
http://autobuild.buildroot.org/results/a59/a59bc999e9620ff6b9d97138a2de898aadc07529

Signed-off-by: Fiona Klute (WIWA) <fiona.klute@gmx.de>
Reviewed-by: Yann E. MORIN <yann.morin@orange.com>
[Romain: add autobuild reference]
Signed-off-by: Romain Naour <romain.naour@smile.fr>
2025-02-22 22:20:38 +01:00
Yann E. MORIN
dcb5d1d918 package/pkg-golang: allow packages to provide extldflags
Currently, only the -static extldflags may be set in the
golang-package infra. However, in some cases, it might be necessary to
pass other flags, either because they are needed on a specific
architecture, or a specific C library; packages may also have a need
to pass arbitrary linker flags when they use CGO linking.

For example, on AArch64, go forcibly uses ld.gold, but it is not
available in all toolchains, and ld.bfd works nowadays (following
patch); another case is musl, where PIE is not supported with go.

Introduce FOO_EXTLDFLAGS, which we use to set those flags, and that
packages can set to pass such flags.

Migrate the current setting of -static to use that new variable.

Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Tested-by: Nathaniel Roach <nroach44@nroach44.id.au>
Signed-off-by: Fiona Klute (WIWA) <fiona.klute@gmx.de>
Reviewed-by: Yann E. MORIN <yann.morin@orange.com>
Reviewed-by: Christian Stewart <christian@aperture.us>
Signed-off-by: Romain Naour <romain.naour@smile.fr>
2025-02-22 22:18:28 +01:00
Frank Vanbever
0748e761e2 package/libmodsecurity: bump to version 3.0.13
For release note, see:
https://github.com/owasp-modsecurity/ModSecurity/releases/tag/v3.0.13

- Drop 0001-configure.ac-drop-usage-of-git-at-configure-time.patch
  The package originally had to be reconfigured to patch in uclinux
  support. The fix has been merged upstream [1]. We no longer need to
  reconfigure the package so we can drop this patch.

[1] https://github.com/owasp-modsecurity/ModSecurity/pull/2235

Signed-off-by: Frank Vanbever <frank.vanbever@mind.be>
[Julien:
 - add link to release note
 - update .checkpackageignore to fix check-package errors
]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-22 18:59:32 +01:00
Giulio Benetti
f683440edd package/mongoose: bump to version 7.17
https://github.com/cesanta/mongoose/releases/tag/7.17

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-22 18:52:21 +01:00
Thomas Perale
dbab39e2d9 support/scripts/generate-cyclonedx.py: add script to generate CycloneDX-style SBOM
There is a growing need to generate software bill of materials (SBOM) from
buildroot configurations. Right now there are different solutions available
for buildroot users `show-info`, `legal-info` and `pkg-stats`.
They all generate similar information but in a format that is specific
to buildroot.

CycloneDX is a SBOM specification that can be consumed by different services.

This patch introduces a Python script, that converts the JSON output of the
show-info Makefile target to a CycloneDX-style SBOM.
The script output contains the following information.
    - A list of all packages, or "components" with information about
      version, cpe (if available), applied patches.
    - By default virtual packages are not listed in the SBOM.
    - Additional information is added to the component 'properties' to
      specify wheter the component is present on the target or the host
      under the `BR_TYPE` property name.
    - An overview of the licenses applicable to each package. If possible,
      the names of these licenses have been matched to known SPDX license
      identifiers.
    - Per package, a list of (recursive) dependencies on other packages.
    - A list of ignored CVE and their associated component.

More information on CycloneDX at https://cyclonedx.org/.

Usage:
    make show-info | utils/generate-cyclonedx.py | jq '.'

Example output:

```
{
  "bomFormat": "CycloneDX",
  "$schema": "http://cyclonedx.org/schema/bom-1.6.schema.json",
  "specVersion": "1.6",
  "components": [
    {
      "bom-ref": "busybox",
      "type": "library",
      "name": "busybox",
      "version": "1.36.1",
      "licenses": [
        {
          "license": {
            "id": "GPL-2.0"
          }
        },
        ...
      ],
      "cpe": "cpe:2.3:a:busybox:busybox:1.36.1:*:*:*:*:*:*:*",
      "pedigree": {
        "patches": [
          {
            "type": "unofficial",
            "diff": {
              "text": {
                "content": "..."
              }
            }
          }
        ]
      }
      "properties": [
        {
          "name": "BR_TYPE",
          "value": "target"
        }
      ]
    },
    ...
  ],
  "dependencies": [
    {
      "ref": "busybox",
      "dependsOn": [
        "host-skeleton",
        "skeleton",
        "skeleton-init-sysv",
        "skeleton-init-common",
        ...
    }
    ...
  ],
  "vulnerabilities": [
    {
      "id": "CVE-2022-28391",
      "analysis": {
        "state": "in_triage",
        "detail": "The CVE 'CVE-2022-28391' has been marked as ignored by Buildroot"
      },
      "affects": [
        {
          "ref": "busybox"
        }
      ]
    },
    ...
  ],
  "metadata": {
    "component": {
      "bom-ref": "buildroot",
      "name": "buildroot",
      "type": "firmware",
      "version": "2024.02-4744-gafea667f00-dirty"
    }
  }
}
```

Signed-off-by: Thomas Perale <thomas.perale@mind.be>
Co-authored-by: Matthias Swiggers <matthias.swiggers@mind.be>
Reviewed-by: Vincent Jardin <vjardin@free.fr>
[Arnout:
 - alphabetically order imports;
 - use endswith instead if 'in' to check suffix;
 - add usage to help text;
 - remove .py suffix.
]
Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
2025-02-22 18:35:30 +01:00
Thomas Perale
180fc4ec96 package/pkg-utils.mk: add patches to show-info json
This commit adds support for listing the patches path or url applied to a
package when calling `show-info`.

To avoid making `show-info` dependant on having to download and patch the
packages there is a known limitation with the patch listing of `show-info`:

  * If a package applies patches in the pre/post hook, they won't be listed
    (for instance: `android-tool`, `libmad`, `gcc-initial`, `gcc-final`,
    `linux-header`, ...).
  * Patches defined in the `<pkg-name>_PATCH` variable will be listed as
    an URL instead of listing the content with a path. For individual
    patches this is probably OK, but it's not so ideal if it's a tarball
    containing patches

Signed-off-by: Thomas Perale <thomas.perale@mind.be>
Co-authored-by: Matthias Swiggers <matthias.swiggers@mind.be>
Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
2025-02-22 18:35:28 +01:00
Thomas Perale
99d4180eda package/pkg-generic.mk: factor out patch directories
The .stamp_patched rule currently uses shell loops and conditions to
iterate over the patches in the package directory and
BR2_GLOBAL_PATCH_DIRS and to select between the versioned and
unversioned directory.

We want to add the patch list to show-info as well, so we need a way to
do this entirely in Make functions.

Introduce the function pkg-patches-dirs in pkg-utils which copies this
functionality in make syntax, and use it in the .stamp_patched rule.
As an extra simplification, only consider the version directory if
PKG_VERSION actually exists. Otherwise, we would use the directory with
a slash appended for packages without version. Why this does work, it
just looks weird for no reason.

Furthermore, introduce the function pkg-patch-hash-dirs which simply
enumerates the package directory and the package subdirectories of
BR2_GLOBAL_PATCH_DIRS. This function is used for _HASH_FILES as well.

Ideally, we should be able to factor our the handling of the version
subdirectory between the patches and hashes as well. Unfortunately, they
are treated subtly different: patches don't use the base directory if
the version directory exists, while hashes do use the base directory. We
don't want to change this behaviour.

Signed-off-by: Thomas Perale <thomas.perale@mind.be>
Co-authored-by: Matthias Swiggers <matthias.swiggers@mind.be>
[Arnout:
 - split into a separate patch;
 - don't fully factor with _HASH_FILES because version is treaded
   differently;
 - introduce pkg-patch-hash-dirs;
 - retain the RAWNAME comment, but move it to pkg-patch-hash-dirs;
 - use foreach instead of shell loop, and $(seq) instead of exit 1;
 - rewrite to retain original behaviour of only using versioned dir.
]
Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
2025-02-22 18:35:25 +01:00
Colin Foster
98aec6280a package/tftpy: bump to 0.8.5
Signed-off-by: Colin Foster <colin.foster@in-advantage.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-22 18:26:43 +01:00
iliana etaoin
8119939243 package/linux-firmware: add option for Chelsio T6
Add an option to install the Chelsio T6 firmware files used by the cxgb4
driver.

Signed-off-by: iliana etaoin <iliana@buttslol.net>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-22 18:16:10 +01:00
Peter Korsgaard
d0711b892d package/rnnoise: fix builds with BR2_OPTIMIZE_FAST
Fixes https://autobuild.buildroot.org/results/3e954cf8e4365d81e58949df50db7e82bf0d0ebf/

Rnnoise refuses to build with -Ofast unless FLOAT_APPROX is defined:

src/arch.h:171:2: error: #error Cannot build libopus with -ffast-math unless
FLOAT_APPROX is defined.  This could result in crashes on extreme (e.g.
NaN) input

So do that.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-22 18:06:42 +01:00
Fiona Klute (WIWA)
51b848b534 package/watchdogd: fix sysv init script
PIDFILE was set incorrectly, watchdogd writes its PID file to
/var/run/watchdogd/pid (note the slash), which is not configurable
without patching.

Restructure the rest of the script to match current style while at it.

Signed-off-by: Fiona Klute (WIWA) <fiona.klute@gmx.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-02-22 15:45:00 +01:00
Fiona Klute (WIWA)
bfb87bafdb package/watchdogd: fix use of uninitialized exit status
The bug could lead to incorrect "critical error" reports if that
uninitialized memory happened to contain a value that interpreted as
an int was above the critical threshold. It affected primarily scripts
running approximately one second or longer, because access happens by
timer.

Signed-off-by: Fiona Klute (WIWA) <fiona.klute@gmx.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-02-22 15:44:18 +01:00
Michel Alex
d0fe6c68df package/libzenoh-c: bump to version 1.2.1
https://github.com/eclipse-zenoh/zenoh-c/releases/tag/1.2.1

Signed-off-by: Alex Michel <alex.michel@wiedemann-group.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-22 15:17:55 +01:00
Michel Alex
dae4b38ae4 package/libzenoh-pico: bump to version 1.2.1
https://github.com/eclipse-zenoh/zenoh-pico/releases/tag/1.2.1

Signed-off-by: Alex Michel <alex.michel@wiedemann-group.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-02-22 15:17:55 +01:00