When building these boards with BR2_PER_PACKAGE_DIRECTORIES enabled,
the following error occurs from U-Boot.
tools/mkeficapsule.c:18:10: fatal error: uuid/uuid.h: No such file or directory
18 | #include <uuid/uuid.h>
| ^~~~~~~~~~~~~
The U-Boot defconfig these boards use 'xilinx_zynqmp_virt' enables
CONFIG_MKEFICAPSULE, which requires util-linux.
This doesn't fail when BR2_PER_PACKAGE_DIRECTORIES is disabled. This
is because host-e2fsprogs requires host-util-linux, and
host-util-linux always builds before host-uboot when single-threaded.
Signed-off-by: Brandon Maier <brandon.maier@collins.com>
Reviewed-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Since the update of ffmpeg to 6.1.1 in commit
fa36a6375d there are
a lot of microblaze build failures.
The compilation failure is triggered by GCC Bug 68485.
We need to disable optimisations, or ffmpeg would add -O3, which would
be present after the -O0 we add, overriding it.
Fixes:
- http://autobuild.buildroot.net/results/524/524cef193aec30471e55eb0eecfa39f0d6011a91
And many more.
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
[yann.morin.1998@free.fr: explain why --disable-optimizations]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Changes with nginx 1.26.2 14 Aug 2024
*) Security: processing of a specially crafted mp4 file by the
ngx_http_mp4_module might cause a worker process crash
(CVE-2024-7347).
Thanks to Nils Bars.
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
MariaDB is failing to build since commit 6b86f076c3 "package/fmt: bump
to version 11.0.1" with output:
/buildroot/output/build/aarch64-buildroot-linux-gnu/sysroot/usr/include/fmt/base.h:1402:29: error: passing 'const fmt::v11::formatter<String>' as 'this' argument discards qualifiers [-fpermissive]
1402 | ctx.advance_to(cf.format(*static_cast<qualified_type*>(arg), ctx));
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This commit is fixing the issue by adding an upstream patch, rebased
on the package version.
Fixes:
http://autobuild.buildroot.org/results/3106928a2d6b32acfb075a2840cf549a81784270/
and many others.
Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
When building with `make -j` and PER_PACKAGE_DIRECTORIES, a race
condition occurs between xilinx-prebuilt and u-boot, resulting in the
following error.
objcopy -O binary -I elf32-little .../images/pmufw.elf .../images/pmufw.bin
objcopy: '.../images/pmufw.elf': No such file
U-Boot registers a KCONFIG_FIXUP_CMD that uses the pmufw.elf from
xilinx-prebuilt. But KCONFIG_FIXUP_CMDS does not use the normal
DEPENDENCIES, so xilinx-prebuilt is not guaranteed to have run before
fixup.
Instead move the `objcopy` call out to a PRE_BUILD_HOOK so it will run
after xilinx-prebuilt has finished.
Signed-off-by: Brandon Maier <brandon.maier@collins.com>
Tested-by: Neal Frager <neal.frager@amd.com>
Reviewed-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
The Linux kernel and U-Boot custom tarballs were updated incorrectly
in commit 45db645457. Update these to select specific release tags
instead of branches. Update the U-Boot and Linux hashes to match
these changes.
Fixes: 45db645457 ("configs/microchip_mpfs_icicle: bump Linux and
U-Boot, add hashes")
Signed-off-by: Jamie Gibbons <jamie.gibbons@microchip.com>
Tested-by: Prajna Rajendra Kumar <prajna.rajendrakumar@microchip.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
The Linux kernel and U-Boot custom tarballs were updated incorrectly
in commit 8ce97fd550. Update these to select specific release tags
instead of branches. Update the U-Boot and Linux hashes to match
these changes.
Fixes: 8ce97fd550 ("configs/beaglev_fire: bump Linux and U-Boot")
Signed-off-by: Jamie Gibbons <jamie.gibbons@microchip.com>
Tested-by: Prajna Rajendra Kumar <prajna.rajendrakumar@microchip.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
See this git shortlog for changes:
Dmitry Chestnykh (2):
Fix compilation with 4.x kernel headers
Group conditions after `&&`
Frank Mehnert (6):
libdl: properly cast parameters for %p format string specifier
iconv: explicit cast to `unsigned char*`
iconv: explicitly state operator precedence
ldso.c: use 'unsigned int' as loop variable type
iconv: fix parameter type of utf8seq_is_{overlong,surrogate,illegal}
iconv: prevent compiler warning during initialization with jis0208
J. Neuschäfer (1):
bits/stat.h: Declare st_mtim if defined(__USE_XOPEN2K8), everywhere
Marcus Haehnel (5):
ldso/dl-vdso: avoid compiler warning if configured without vdso
uclibc: Fix double promotion warning
libm: Fix float conversion compiler warning
features.h: add clang prerequisite macro
buildsys: allow building with gcc-14
Sven Linker (1):
c++: Remove deprecated dynamic exception specification
Valentin Gehrke (1):
arm: Replace deprecated asm instructions for ARMv8 AArch32
Waldemar Brodkorb (9):
Clang support for gnu_inline attribute
allow to use <sys/ucontext.h>
add SEEK_DATA/SEEK_HOLE
lseek: allow SEEK_DATA/SEEK_HOLE to be used
bits/stat.h: Declare st_mtim if defined(__USE_XOPEN2K8), add missing
riscv: remove incomplete context implementation, use libucontext
add memfd_create syscall wrapper
getrandom: remove __USE_GNU / add GRND_INSECURE
bump version for 1.0.50 release
Yann Le Du (1):
stdlib: increase number of static atexit handlers to 32
All buildroot patches are upstream.
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Without the unbound user the daemon does not start on bootup.
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This adds the host dependency host-qt6base as host-qt6tools requires the
Qt cmake modules to be installed.
Fixes:
$ make qt6tools
(...)
CMake Error at CMakeLists.txt:21 (find_package):
Could not find a package configuration file provided by "Qt6" (requested
version 6.7.2) with any of the following names:
Qt6Config.cmake
qt6-config.cmake
Add the installation prefix of "Qt6" to CMAKE_PREFIX_PATH or set "Qt6_DIR"
to a directory containing one of the above files. If "Qt6" provides a
separate development package or SDK, be sure it has been installed.
Signed-off-by: Gaël PORTAY <gael.portay@rtone.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
The download and homepage URL for this project have been
updated. The old site no longer works.
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Provide correct grouping for preprocessor conditions to avoid building
ld.so with undefined macroses which are in use. This is a fix for
package/uclibc/0002-Fix-compilation-with-4.x-kernel-headers.patch.
Signed-off-by: Dmitry Chestnykh <dm.chestnykh@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Some buildsystems (or their use of it by packages) will cause flags in
LDFLAGS to be re-orderded, or even dropped, causing some
incomprehensible mayhem... For example, gpsd [0] has this in its
SConscript [1](typoes not mines, for once):
591 # scons uses gcc, or clang, to link. Thus LDFLAGS does not serve its
592 # traditional function of providing arguments to ln. LDFLAGS set in the
593 # environment before running scons get moved into CCFLAGS by scons.
594 # LDFLAGS set while running scons get ignored.
[--SNIP--]
611 for i in ["ARFLAGS",
612 "CCFLAGS",
613 "CFLAGS",
614 "CPPFLAGS",
615 "CXXFLAGS",
616 "LDFLAGS",
617 "LINKFLAGS",
618 "SHLINKFLAGS",
619 ]:
620 if i in os.environ:
621 # MergeFlags() puts the options where scons wants them, not
622 # where you asked them to go.
623 env.MergeFlags(Split(os.getenv(i)))
So, when LDFLAGS (our TARGET_LDFLAGS) contains "-z text" (without the
quotes), that gets turned into a command line like (line-splitted for
readability):
[...]/buildroot/output/host/bin/aarch64_be-buildroot-linux-musl-gcc \
-o gpsd-3.25/drivers/driver_rtcm2.os \
-c \
--sysroot=[...]/buildroot/output/host/aarch64_be-buildroot-linux-musl/sysroot \
-O3 -g0 \
-z \
-fPIC -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 \
gpsd-3.25/drivers/driver_rtcm2.c
Notice how there is a lone "-z" without any following keyword.
This then causes a build failure that looks totally unrelated [2]:
In file included from gpsd-3.25/drivers/../include/gpsd.h:36,
from gpsd-3.25/drivers/driver_rtcm2.c:65:
gpsd-3.25/drivers/../include/os_compat.h:40:8: error: redefinition of ‘struct timespec’
40 | struct timespec {
| ^~~~~~~~
In file included from [...]/buildroot/output/host/aarch64_be-buildroot-linux-musl/sysroot/usr/include/sys/select.h:16,
from gpsd-3.25/drivers/../include/gpsd.h:31:
[...]/buildroot/output/host/aarch64_be-buildroot-linux-musl/sysroot/usr/include/bits/alltypes.h:237:8: note: originally defined here
237 | struct timespec { time_t tv_sec; int :8*(sizeof(time_t)-sizeof(long))*(__BYTE_ORDER==4321); long tv_nsec; int :8*(sizeof(time_t)-sizeof(long))*(__BYTE_ORDER!=4321); };
| ^~~~~~~~
gpsd-3.25/drivers/../include/os_compat.h:48:5: error: conflicting types for ‘clock_gettime’; have ‘int(clockid_t, struct timespec *)’ {aka ‘int(int, struct timespec *)’}
48 | int clock_gettime(clockid_t, struct timespec *);
| ^~~~~~~~~~~~~
In file included from gpsd-3.25/drivers/../include/gpsd.h:33:
[...]/buildroot/output/host/aarch64_be-buildroot-linux-musl/sysroot/usr/include/time.h:104:5: note: previous declaration of ‘clock_gettime’ with type ‘int(clockid_t, struct timespec *)’ {aka ‘int(int, struct timespec *)’}
104 | int clock_gettime (clockid_t, struct timespec *);
| ^~~~~~~~~~~~~
scons: *** [gpsd-3.25/drivers/driver_rtcm2.os] Error 1
scons: building terminated because of errors.
make[1]: *** [package/pkg-generic.mk:289: [...]/buildroot/output/build/gpsd-3.25/.stamp_built] Error 2
make: *** [Makefile:83: _all] Error 2
Although undocumented, neither in gcc not ld (clang unchecked by lack of
a clang toolchain here, and by lack of clang knowledge), -z accepts the
keyword to be snatch-glued onto it, like -zkeyword, rather than be
spearated with a space. So, use that to pass -ztext.
Fixes:
http://autobuild.buildroot.org/results/c03/c039989947b960ac6af17c87090366abc26dcb6d/http://autobuild.buildroot.net/results/bc35d3e7b0e8c59c776652070650af3c749250ee/
[0] Our other scons-based package, mongodb, does not build for another
reason that probably hides the same issue as seen with gpsd.
[1] As explained in gpsd's SConscript (se above), Scons does play tricks
with variables:
https://scons.org/doc/production/HTML/scons-man.html#f-MergeFlagshttps://scons.org/doc/production/HTML/scons-man.html#f-ParseFlags
Quoting:
Flag values are translated according to the prefix found, and added
to the following construction variables:
[...]
-Wl, LINKFLAGS
[...]
- CCFLAGS
[...]
Any other strings not associated with options are assumed to be the
names of libraries and added to the $LIBS construction variable.
So in our case, it finds that -z is an unknown option that matches the
'-' prefix, so it is added to CFLAGS, while 'text' is a string on its
own, so added to LIBS, and thus it would try to link with -ltext
(supposedly, because we do not even go that far). Funnily enough, we can
se that "-Wl," is a known option prefix, that is added to LINKFLAGS (to
properly be used with gcc or clang, not ld).
As a consequence, gpsd's buildsystem does drop -ztext from the link
flags, and only passes it to the compile flags, which brings us back to
before we banned textrels in a1a2f498d7 (package/Makefile.in: ban
textrels on musl toolchains). Fixing gpsd is a task for another,
separate patch...
[2] I spent quite some time to look at recent, time-related changes in
Buildroot, especially due to the infamous time64_t issues... Alas, that
was not related, and only a git-bisect pinpointed the actual issue. Poor
polar bears...
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Cc: J. Neuschäfer <j.neuschaefer@gmx.net>
Reviewed-by: J. Neuschäfer <j.neuschaefer@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Migrate the zynqmp_zcu106_defconfig to rev1.0 ddr memory, since all new boards
will be using the rev1.0 ddr memory.
This patch also adds documentation in the board/zynqmp/readme.txt explaining
the issue related to the change in ddr memory. Should users not see anything
printing from the board during boot, the most likely issue is that the board
has the original ddr memory and the u-boot device tree needs to be configured
accordingly to revA.
Original DDR Memory:
BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=zynqmp-zcu106-revA"
More information regarding this issue can be found here:
https://support.xilinx.com/s/article/71961?language=en_US
Signed-off-by: Neal Frager <neal.frager@amd.com>
Reviewed-by: Brandon Maier <brandon.maier@collins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
As of commit e35f29177495131f0f598fc7ae1ffd74d89edf15, the dynamic-layouts
example has been removed from the flutter-packages repository, which fixes
https://github.com/flutter/flutter/issues/148979.
The exact reasoning is as follows:
```
The dynamic_layouts package is unpublished, and its core feature set has not
been updated in years.
Though it's not high-traffic, all packages in that repo require maintenance
for Flutter versions, gradle bumps, and project migrations.
```
Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Add `"download_fuchsia_deps": False` to the dot-gclient file as this is
for linux, not fuchsia, so the dependencies are not necessary.
Also, change various paths in flutter-engine.mk to ensure that the package
builds correctly.
Remove patch
0005-skip-configuration-dependency-if-unit-tests-are-disa.patch which
is upstream.
Tested with tests.package.test_flutter.TestFlutter.test_run
Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
As of https://github.com/flutter/engine/pull/51943, by default, flutter now
uses and provides the AOT snapshot frontend server instead of the
frontend_server.dart.snapshot.
The depfile produced by dart has been renamed from kernel_snapshot.d to
kernel_snapshot_program.d.
Flutter programs must compile with the dartaotruntime binary instead of the
dart binary, or else errors occure stating that the dartaotruntime must be
used.
Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>