parser.error() reports a nice error message, that also displays a short
reminder of the available options.
Adapt the test-suite accordingly: previously, the error string was an
exact string in the stdout list, while it now is a substring in one of
the strings in stderr. The exit code changes, too.
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Cc: Julien Olivain <ju.o@free.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
(cherry picked from commit 35f381b93e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Offloading parser.parse_args() to a helper function does not bring much,
if at all; it even is restrictive: indeed, we can't use parser.error()
to report errors and thus have to resort to a canned print+return
sequence...
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
(cherry picked from commit cdcb3f56e8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The variable <pkg>_LINUX_CONFIG_FIXUPS defined in the
cryptodev-linux... has no effect. Indeed, the variable is only named
CRYPTODEV_LINUX_CONFIG_FIXUPS.
But the variable name being <pkg>_LINUX_CONFIG_FIXUPS and the package
name being CRYPTODEV_LINUX, the correct variable name is
CRYPTODEV_LINUX_LINUX_CONFIG_FIXUPS.
Prior to this commit, a configuration with cryptodev-linux enabled
would result in:
$ make VARS=PACKAGES_LINUX_CONFIG_FIXUPS printvars
$
Aka, empty, while PACKAGES_LINUX_CONFIG_FIXUPS collects in
package/pkg-generic.mk the value of the <pkg>_LINUX_CONFIG_FIXUPS
variables from all enabled packages.
With this patch applied:
$ make VARS=PACKAGES_LINUX_CONFIG_FIXUPS printvars
PACKAGES_LINUX_CONFIG_FIXUPS= @if ! grep -q '^CONFIG_CRYPTO=[my]' /; then /usr/bin/sed -i -e '/^\(# \)\?CONFIG_CRYPTO\>/d' / && echo 'CONFIG_CRYPTO=y' >> /; fi
@if ! grep -q '^CONFIG_CRYPTO_USER_API_AEAD=[my]' /; then /usr/bin/sed -i -e '/^\(# \)\?CONFIG_CRYPTO_USER_API_AEAD\>/d' / && echo 'CONFIG_CRYPTO_USER_API_AEAD=y' >> /; fi
$
As one would expect.
Fixes: 4b12336d1f ("package/cryptodev-linux: needs CONFIG_CRYPTO_USER_API_AEAD")
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
(cherry picked from commit 9114d48b31)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Since the bump of xxhash from 0.8.2 to 0.8.3 in Buildroot commit
4b8f2f3a5e, the host of host-php fails
when host-xxhash has been built before.
This is due to the fact that host-xxhash installs
HOST_DIR/include/xxhash.h, and the PHP code has an internal xxhash.h,
but due to the order of CFLAGS, the one from HOST_DIR/include/xxhash.h
gets included instead of the internal xxhash.h from PHP.
We initially tried to fix the order of CFLAGS, but that has proven to
be challenging within the complicated PHP build system. Then, we opted
for renaming the internal xxhash.h header of PHP, which we had
implemented and were about to submit upstream. But while rebasing this
fix on PHP's master, it turned out that PHP has an upstream commit
"Sync headers installation", merged for PHP 8.4.0, which has the side
effect of avoiding the issue. This commit moves xxhash.h into a
subfolder, so it gets included as #include "xxhash/xxhash.h" now,
which avoids the conflict with HOST_DIR/include/xxhash.h. Maybe not
the best fix, but it does fix the issue and it's upstream.
Since this patch is tweaking the PHP build system, we need to do the
equivalent of "autoreconf" but in the PHP world. It was already done
for the target package, we simply add the same logic for the host
package.
Fixes:
http://autobuild.buildroot.net/results/583c054a564f90b8c884565070c5e17b43b89674/
Cc: James Hilliard <james.hilliard1@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
(cherry picked from commit 3a20dfb426)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
pixman fails to build with -Og or -O3 due to forced inlining
statements:
pixman-combine-float.c:370:5: error: inlining failed in call to 'always_inline' 'combine_soft_light_c': function not considered for inlining
The first occurence in the autobuilders is on May 12, 2024, but the
problem already existed before as we haven't updated pixman in a long
time. Therefore, the issue started occurring because we started
testing more random configurations.
Fixes:
https://autobuild.buildroot.org/results/2f3df7961b3181d9eef79893439ae7ebbe4415ad/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
(cherry picked from commit 696de595e0)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Setting CONFIG_VIDEO_DEV is no sufficient as drivers/media/Kconfig has
some very convoluted logic to hide some options behind a
CONFIG_MEDIA_SUPPORT_FILTER option, unless CONFIG_EXPERT is
enabled. Due to this, several arch defconfigs don't have
CONFIG_VIDEO_DEV enabled when doing $(call
KCONFIG_ENABLE_OPT,CONFIG_VIDEO_DEV).
To fix this, we enable one of the possible options that ensures
CONFIG_VIDEO_DEV is enabled, and we've more or less arbitrarily chosen
CONFIG_MEDIA_CAMERA_SUPPORT.
Fixes:
http://autobuild.buildroot.net/results/2a337d29e7870564027bcd42bd0addd228eb6a24/
We've tried to track down which kernel version introduced this
exactly, but it's been introduced a while ago and step by step making
it difficult to pin-point which version version exactly introduced
this. But the issue has been appearing for quite some time in the
autobuilders, so it's clearly not a recent issue.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
(cherry picked from commit 75d418b59d)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
HOST_CFLAGS and HOST_LDFLAGS are currently not accounted for when
building host-perl. In particular, it means that executables
built/installed by host-perl do not have a RPATH pointing to
HOST_DIR/lib, which can cause issues as libcrypt.so can now be
provided by host-libxcrypt.
This was causing check-host-rpath to complain in the situation where:
1. host-perl was built, with no RPATH, linked against the system
libcrypt.so
2. host-libxcrypt was built afterwards, installed as
HOST_DIR/lib/libcrypt.so, which made check-host-rpath complain as
HOST_DIR/bin/perl is linked against a library present in
HOST_DIR/lib but doesn't have a RPATH to HOST_DIR/lib
Fixes:
http://autobuild.buildroot.net/results/d4348d7f872ccd734795a1d071960a696148ed6a/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Acked-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Julien Olivain <ju.o@free.fr>
(cherry picked from commit 65127a8a77)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Newer versions of U-Boot (2024.10 and newer) will require the GnuTLS
library to be installed on the host machine to build the mkeficapsule
tool for U-Boot's image packaging phase to generate the final capsule
for all the boot images including the tiboot3.bin image.
Add host-gnutls to the list of dependencies.
Fixes:
https://gitlab.com/buildroot.org/buildroot/-/jobs/8723483578 (ti_am62x_sk_defconfig)
Signed-off-by: Bryan Brattlof <bb@ti.com>
Signed-off-by: Romain Naour <romain.naour@smile.fr>
(cherry picked from commit eb9bb65629)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The configurations that have:
- BR2_ENABLE_RUNTIME_DEBUG=y
- One of BR2_FORTIFY_SOURCE_xyz=y
Currently fail to build, as libzenoh-pico's build system forces -O0
when BR2_ENABLE_RUNTIME_DEBUG=y, but -O0 builds aren't compatible with
_FORTIFY_SOURCE, causing:
../../../per-package/libzenoh-pico/host/mips64-buildroot-linux-gnu/sysroot/usr/include/features.h:422:4: error: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Werror=cpp]
422 | # warning _FORTIFY_SOURCE requires compiling with optimization (-O)
| ^~~~~~~
cc1: all warnings being treated as errors
We fix this by adding a patch that drops the forced -O3 (release
builds) and -O0 (debug builds) from the project CMakeLists.txt.
This issue exists since libzenoh-pico was introduced in Buildroot in
commit
a96361901d ("package/libzenoh-pico: new
package"), but was hidden by other issues until a first occurence in
November 2024 right after the bump to 1.0.1:
http://autobuild.buildroot.net/results/f109e8b4aba0286dcaac5cb6d4579e6d91c492f8/
Fixes:
http://autobuild.buildroot.net/results/f109e8b4aba0286dcaac5cb6d4579e6d91c492f8/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
(cherry picked from commit 0b785f5b06)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The patch fixes the following errors and warnings raised by the
compilation of libxml2 with the combination of GCC 14.x and uClibc.
encoding.c: In function ‘xmlEncInputChunk’:
encoding.c:2209:32: warning: comparison between pointer and integer
2209 | else if (handler->iconv_in != NULL) {
| ^~
encoding.c: In function ‘xmlEncOutputChunk’:
encoding.c:2269:33: warning: comparison between pointer and integer
2269 | else if (handler->iconv_out != NULL) {
| ^~
encoding.c: In function ‘xmlCharEncCloseFunc’:
encoding.c:2681:29: warning: comparison between pointer and integer
2681 | if ((handler->iconv_out != NULL) || (handler->iconv_in != NULL)) {
| ^~
encoding.c:2681:60: warning: comparison between pointer and integer
2681 | if ((handler->iconv_out != NULL) || (handler->iconv_in != NULL)) {
| ^~
encoding.c:2683:32: warning: comparison between pointer and integer
2683 | if (handler->iconv_out != NULL) {
| ^~
encoding.c:2686:32: error: assignment to ‘iconv_t’ {aka ‘long int’} from ‘void *’ makes integer from pointer without a cast [-Wint-conversion]
2686 | handler->iconv_out = NULL;
| ^
encoding.c:2688:31: warning: comparison between pointer and integer
2688 | if (handler->iconv_in != NULL) {
| ^~
encoding.c:2691:31: error: assignment to ‘iconv_t’ {aka ‘long int’} from ‘void *’ makes integer from pointer without a cast [-Wint-conversion]
2691 | handler->iconv_in = NULL;
| ^
make[4]: *** [Makefile:1147: libxml2_la-encoding.lo] Error 1
This code has been in libxml2 pretty much forever: it was partially
introduced in version 2.1.0: 496a1cf59284 ("496a1cf59284 revamped the
encoding support, added iconv support, so now libxml if") and
partially in version 2.2.3: 87b953957305 ("Large sync between my W3C
base and Gnome's one:"). And the first time Buildroot packaged
libxml2, it was version 2.6.29.
However, both glibc and musl define iconv_t as "void *", which meant
the libxml2 code was not problematic. uClibc defines iconv_t as
"long", which generated only a warning... until GCC got updated to GCC
14.x, which turned this warning into an error, causing the build
failure.
Fixes:
http://autobuild.buildroot.net/results/fd4f8d2e8d8ee68d9e18f761ceff350188e55a87/
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit ca63c4409b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The handling of BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG is currently
not doing a proper job: it is selecting ppc64le_defconfig if
BR2_powerpc64le, and using the default of "defconfig" for everything
else.
However:
- Since upstream commit 22f17b02f88b48c01d3ac38d40d2b0b695ab2d10,
which landed in Linux 6.8, the default defconfig is
ppc64le_defconfig and no longer ppc64_defconfig. This means that
despite the condition in linux.mk, we are in fact now always
building ppc64le_defconfig.
- It doesn't handle the 32-bit case, as a 64-bit defconfig gets used
by default. This causes build failures in the autobuilders.
To fix this we explicitly handle BR2_powerpc64le, BR2_powerpc64 and
BR2_powerpc, and use appropriate defconfigs for each case.
Fixes:
http://autobuild.buildroot.net/results/c15eaf2e7455aa265cc045e6d8be7cac5348d925/ (powerpc)
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
(cherry picked from commit 82326a3d83)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
In the latest kernel, U-Boot images are always generated when building
a kernel for NIOS2. Note that we build the kernel with:
make all
make <selected-image>
so the selected image through Buildroot options doesn't matter: a
U-Boot image is always generated.
Therefore, in order to fix autobuilder issues, make sure
host-uboot-tools are always selected when building the latest kernel
version. We do not select it in general as custom versions may be
different.
Fixes:
http://autobuild.buildroot.net/results/1d4c249887bdd78dab40152ad3a4fcef16458a1a/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
(cherry picked from commit d94c478ebc)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Since procps-ng was bumped from 3.3.17 to 4.0.4 in commit
d79f40dbbe ("package/procps-ng: security
bump to version 4.0.4"), the build has been failing on !wchar
configurations with:
src/ps/output.c:68:10: fatal error: wctype.h: No such file or directory
68 | #include <wctype.h>
| ^~~~~~~~~~
compilation terminated.
The problematic code has been added by upstream commit
605ea4a8f7,
which landed in upstream release v4.0.0.
To solve this, we simply add a BR2_USE_WCHAR dependency, and update
the comment related to this dependency on the only reverse dependency
of procps-ng.
Fixes:
http://autobuild.buildroot.net/results/afc035e866bec6f2c14f9d52fa74a9c1897706de/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
(cherry picked from commit f6fe892141)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The datafiles include the dbus policy, without which bluetoothd fails
to start (unless it is provided by other means):
# /usr/libexec/bluetooth/bluetoothd -n
bluetoothd[1011]: Bluetooth daemon 5.78
D-Bus setup failed: Connection ":1.7" is not allowed to own the service "org.bluez" due to security policies in the configuration file
bluetoothd[1011]: src/main.c:main() Unable to get on D-Bus
The installation issue 1a8676aa6e was
meant to fix is the result of upstream incorrectly installing
/etc/bluetooth with 0555 (strictly read-only) permissions.
Fixes: 1a8676aa6e
Signed-off-by: Fiona Klute (WIWA) <fiona.klute@gmx.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 421a92a897)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This is a basic test for Xvisor RISC-V 64bit. It is running few
management and status commands. It does not start a Linux kernel.
RISC-V 64bit was chosen for this test because it was the simplest
solution to run xvisor in a qemu emulator.
Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit e14380b3c4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Building on a s390x host, we currently end up with:
output/host/lib
output/host/lib32 -> lib
output/host/lib64
host-libopenssl installs to lib64, but since the kernel build doesn't
explicitly search there, it breaks:
>>> linux 6.6.32 Building
[...]
HOSTCC scripts/sign-file
/usr/bin/ld: cannot find -lcrypto: No such file or directory
collect2: error: ld returned 1 exit status
Fix this by creating a lib64 link instead of lib32, so we get:
output/host/lib
output/host/lib64 -> lib
Signed-off-by: Reza Arbab <arbab@linux.ibm.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 66a5f9bc74)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
From
https://lists.freedesktop.org/archives/wayland-devel/2024-October/043858.html:
This is Weston 14.0.1, a bug-fix release. Most of the fixes here are
addressing some build issues with a C++ compiler, but also addressing a
more critical issue that was causing the gtk4 test suite or other clients
to crash when using the headless backend.
Some distros already carry a patch to address that, but in case they
have not, this would be a good time to update.
David Edmundson (1):
libweston: Send seat name before announcing devices
EatingSumo (1):
libweston/screenshooter: Fix build when __builtin_clz is not available
Jan Alexander Steffens (heftig) (1):
libweston/noop-renderer: Check shm_buffer for NULL
Jan Engelhardt (1):
build: insert missing wayland-server-protocol dependency
Jeri Li (1):
libweston/desktop: avoid weston crash while xdg_surface ack_configure
Marius Vlad (4):
libweston: Move weston_get_backend_type after enum declaration
desktop-shell: Don't attempt to re-add the view to panel layer
libweston/matrix: Fix narrow conversion with C++
build: bump to version 14.0.1 for the point release
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
(cherry picked from commit 6f74ee11b4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
From
https://lists.freedesktop.org/archives/wayland-devel/2024-August/043760.html:
This is a bugfix release for Wayland 1.23.
Joaquim Monteiro (1):
meson: Fix use of install_data() without specifying install_dir
Kirill Primak (1):
Put WL_DEPRECATED in front of the function declarations
Sebastian Wick (1):
client: Handle proxies with no queue
Simon Ser (4):
scanner: extract validator function emission to helper function
scanner: fix validator for bitfields
tests: add enum bitfield test
build: bump version to 1.23.1 for the bugfix release
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
(cherry picked from commit f27dcb9310)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Since the python-autocommand package has been introduced in commit
b6f3278539 ("package/python-autocommand:
new package"), it has consistently been failing to build with:
Traceback (most recent call last):
File "/home/autobuild/autobuild/instance-12/output-1/host/lib/python3.12/site-packages/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
main()
File "/home/autobuild/autobuild/instance-12/output-1/host/lib/python3.12/site-packages/pyproject_hooks/_in_process/_in_process.py", line 335, in main
json_out['return_val'] = hook(**hook_input['kwargs'])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/autobuild/autobuild/instance-12/output-1/host/lib/python3.12/site-packages/pyproject_hooks/_in_process/_in_process.py", line 118, in get_requires_for_build_wheel
return hook(config_settings)
^^^^^^^^^^^^^^^^^^^^^
File "/home/autobuild/autobuild/instance-12/output-1/host/lib/python3.12/site-packages/setuptools/build_meta.py", line 327, in get_requires_for_build_wheel
return self._get_build_requires(config_settings, requirements=[])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/autobuild/autobuild/instance-12/output-1/host/lib/python3.12/site-packages/setuptools/build_meta.py", line 297, in _get_build_requires
self.run_setup()
File "/home/autobuild/autobuild/instance-12/output-1/host/lib/python3.12/site-packages/setuptools/build_meta.py", line 497, in run_setup
super().run_setup(setup_script=setup_script)
File "/home/autobuild/autobuild/instance-12/output-1/host/lib/python3.12/site-packages/setuptools/build_meta.py", line 313, in run_setup
exec(code, locals())
File "<string>", line 8, in <module>
File "/home/autobuild/autobuild/instance-12/output-1/host/lib/python3.12/site-packages/setuptools/__init__.py", line 108, in setup
return distutils.core.setup(**attrs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/autobuild/autobuild/instance-12/output-1/host/lib/python3.12/site-packages/setuptools/_distutils/core.py", line 158, in setup
dist.parse_config_files()
File "/home/autobuild/autobuild/instance-12/output-1/host/lib/python3.12/site-packages/setuptools/dist.py", line 632, in parse_config_files
pyprojecttoml.apply_configuration(self, filename, ignore_option_errors)
File "/home/autobuild/autobuild/instance-12/output-1/host/lib/python3.12/site-packages/setuptools/config/pyprojecttoml.py", line 71, in apply_configuration
return _apply(dist, config, filepath)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/autobuild/autobuild/instance-12/output-1/host/lib/python3.12/site-packages/setuptools/config/_apply_pyprojecttoml.py", line 53, in apply
_apply_project_table(dist, config, root_dir)
File "/home/autobuild/autobuild/instance-12/output-1/host/lib/python3.12/site-packages/setuptools/config/_apply_pyprojecttoml.py", line 79, in _apply_project_table
corresp(dist, value, root_dir)
File "/home/autobuild/autobuild/instance-12/output-1/host/lib/python3.12/site-packages/setuptools/config/_apply_pyprojecttoml.py", line 181, in _license
_set_config(dist, "license", val["text"])
~~~^^^^^^^^
KeyError: 'text'
This is due to incorrect license information in pyproject.toml. This
was probably missed as the package was merged ~6 months after it was
submitted, so probably at the time it was submitted, it worked fine,
but got broken with more recent versions of setuptools.
Fixes:
http://autobuild.buildroot.net/results/c9114834eb00569cdb8ec3251ccd5ecfd906c9c9/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
(cherry picked from commit 621ebccf3f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>