Signed-off-by: Jarkko Sakkinen <jarkko@kernel.org>
[yann.morin.1998@free.fr: also disable doc and tests]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This patch moves the linux and uboot hashes from 'board/zynq/patches' to
'board/xilinx/patches'. The reason for this is that all of the Xilinx boards
including zynq, zynqmp and versal will be using the same linux and uboot repo.
By putting the hashes in 'board/xilinx/patches', the same hashes can be shared
amongst all of the Xilinx boards.
Signed-off-by: Neal Frager <neal.frager@amd.com>
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This patch bumps the zynqmp_kria_kr260_defconfig to xilinx-v2024.1 which includes
the following updates:
- Linux v6.6.10
- U-Boot v2024.01
- ATF v2.10
- PMUFW xilinx-v2024.1
Migrated u-boot to xilinx_zynqmp_kria_defconfig, so uboot.fragment no longer
needed.
With u-boot 2024.1, CONFIG_SYS_SPI_U_BOOT_OFFS has a new meaning. It is now
the offset between the base address of the boot.bin and u-boot.itb instead of
a raw base address of u-boot.itb. This allows for A/B firmware updates since
the u-boot.itb is set by default to a 0x80000 offset of the boot.bin.
Thus, Kria SOMs come with the following QSPI address table.
Partition A:
0x200000 - boot.bin
0x280000 - u-boot.itb
Partition B:
0xF80000 - boot.bin
0x1000000 - u-boot.itb
This patch updates the addressing in the readme.txt accordingly.
Signed-off-by: Neal Frager <neal.frager@amd.com>
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This patch bumps the zynqmp_kria_kv260_defconfig to xilinx-v2024.1 which includes
the following updates:
- Linux v6.6.10
- U-Boot v2024.01
- ATF v2.10
- PMUFW xilinx-v2024.1
Migrated u-boot to xilinx_zynqmp_kria_defconfig, so uboot.fragment no longer
needed.
With u-boot 2024.1, CONFIG_SYS_SPI_U_BOOT_OFFS has a new meaning. It is now
the offset between the base address of the boot.bin and u-boot.itb instead of
a raw base address of u-boot.itb. This allows for A/B firmware updates since
the u-boot.itb is set by default to a 0x80000 offset of the boot.bin.
Thus, Kria SOMs come with the following QSPI address table.
Partition A:
0x200000 - boot.bin
0x280000 - u-boot.itb
Partition B:
0xF80000 - boot.bin
0x1000000 - u-boot.itb
This patch updates the addressing in the readme.txt accordingly.
Signed-off-by: Neal Frager <neal.frager@amd.com>
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This patch bumps the versal_vck190_defconfig to xilinx-v2024.1 which includes
the following updates:
- Linux v6.6.10
- U-Boot v2024.01
- ATF v2.10
- PLM xilinx-v2024.1
- PSMFW xilinx-v2024.1
Removed ATF patches that were needed for ATF v2.8.
Signed-off-by: Neal Frager <neal.frager@amd.com>
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
There is no longer a need to lie about having mercurial installed as of
upstream 5c4b0d063a, so drop the ac_cv_prog_HAS_HG override.
`PYTHON3_REMOVE_USELESS_FILES`, while not exactly useless, had been
referencing stale files and not performing full cleanup:
* the "m" ABI suffix was dropped in upstream 6c44fde3e0 (python 3.8)
* the smtpd was dropped in upstream a797fba888 (python 3.1)
* the wininst* binaries were dropped in upstream 0e2a0f72cc (python 3.10)
These legacy references have now been dropped.
The smtpd.py file is a bit quirky because despite having been removed
upstream, Buildroot's patches to disable certain modules have been
carrying it forward. This has been rectified.
While here, rework the file removals to accomodate the ABI suffix change
and to globally remove __pycache__ directories. It's important to note
that Buildroot uses legacy pyc placements for sourceless distributions,
meaning __pycache__ is not used at all [0].
When necessary, optimized pyc files will be generated into the correct
paths in subsequent hooks.
[0]: https://peps.python.org/pep-3147/#case-4-legacy-pyc-files-and-source-less-imports
Signed-off-by: Vincent Fazio <vfazio@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Set GI_GIRDIR env variable which is now required for configure
to function.
Details:
a9d38070ce
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
[yann.morin.1998@free.fr: drop spurious reflow of _DEPENDENCIES]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Change download location as the new version is not available at the
old location.
Remove already upstreamed patch.
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The tools require openssl (and cjson for mosquitto_ctrl), and are silently
skipped by the mosquitto build system if those are not available.
The tools are small compared to the broker and dependencies:
-rwxr-xr-x 1 peko peko 4.8M Jun 1 00:42 target/usr/lib/libcrypto.so.3
-rwxr-xr-x 1 peko peko 968K Jun 1 00:42 target/usr/lib/libssl.so.3
-rwxr-xr-x 1 peko peko 266K Jun 1 00:42 target/usr/sbin/mosquitto
-rwxr-xr-x 1 peko peko 54K Jun 1 00:42 target/usr/bin/mosquitto_ctrl
-rwxr-xr-x 1 peko peko 34K Jun 1 00:42 target/usr/lib/libcjson.so.1.7.18
-rwxr-xr-x 1 peko peko 26K Jun 1 00:42 target/usr/bin/mosquitto_passwd
So automatically build them (if the dependencies are available) when the
broker is built.
Notice: We have to explicitly build apps/mosquitto_ctrl +
apps/mosquitto_passwd and not just apps, as apps/Makefile uses a DIRS
variable that conflicts with the DIRS=.. we pass to the toplevel Makefile.
Signed-off-by: Sebastien Laveze <slaveze@smartandconnective.com>
[Peter: drop dedicated option, also handle mosquitto_ctrl]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Test the source provider of host-go to build a Go package.
The tests consist of building and installing a Go package in the root
file system of an ARM vexpress QEMU system.
Signed-off-by: Thomas Perale <thomas.perale@mind.be>
[yann.morin.1998@free.fr: drop the go-bin test-case]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Turns host-go into a virtual package, with a single providers:
- host-go-src, which builds host-go from source based on the same logic
that was previously used in package/go/go/go.mk, now moved to
package/go/go-src/go-src.mk to remove any ambiguity on the role of
the package.
In later commits, we'll add host-go-bin a prebuilt binary host go compiler
as another provider.
A similar solution is proposed for host-rust.
Signed-off-by: Thomas Perale <thomas.perale@mind.be>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Makes every packages built by the Go compiler select a new variable
introduced in this patch: BR2_PACKAGE_HOST_GO.
In later commits Go compiler variant will be introduced (built from
source, pre-built binaries) and selecting BR2_PACKAGE_HOST_GO will
force to add host-go provider to the dependency list.
The same pattern is used for Rust packages.
Signed-off-by: Thomas Perale <thomas.perale@mind.be>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Move every go compiler-related packages into a newly created
package/go/ subdirectory.
This subdirectory structure moves the GO_VERSION variable into the
common package/go/go.mk file. In the next commits, host-go will be
turned into a virtual-package and the common GO_VERSION force the
providers to use the same Go compiler version.
Common variables to all providers are kept in package/go/go.mk and
package/go/Config.in.host.
Also, the subdirectory structure forces the evaluation of the common
GO_VERSION before the providers access it.
Signed-off-by: Thomas Perale <thomas.perale@mind.be>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Commit 9a629f5 "utils/docker-run: allow running with Podman" added an
option on system providing the podman command. This case is mainly
for Fedora systems.
Fedora repositories have a podman-docker package, that provides the
docker command for compatibility. See [1]. In that case, invoking
"docker" redirects to podman.
When this package is installed on a Fedora system, both the docker and
podman commands are available. Since the docker command is checked
before podman, the --userns option is not passed in that case. This
brings "permission denied" errors.
Other cases are also possible, like a host system providing the real
Docker alongside a podman installation. In such a case, to avoid
unexpected change of behavior of the docker-run script, the original
search order is preserved (search for "docker" first, then "podman").
This commit changes the way the podman user namespace mode is set.
Rather than adding the "--userns=keep-id" command line option only in
the podman case, it is globally set using the PODMAN_USERNS=keep-id
environment variable [2].
Doing so makes sure that the variable will be consumed by the "docker"
compatibility command, and just ignored by the real "docker"
implementation.
[1] https://packages.fedoraproject.org/pkgs/podman/podman-docker/
[2] https://docs.podman.io/en/latest/markdown/podman-run.1.html
Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Update all skarnet.org packages to their current upstream version:
- execline
- mdevd
- s6
- s6-dns
- s6-linux-init
- s6-linux-utils
- s6-networking
- s6-portable-utils
- s6-rc
- skalibs
This patch(set) updates the packages from skarnet.org. It is one commit
to avoid build failures due to incompatible versions: for example, when
only skalibs are updated, execline fails to build; conversely, bumping
execline before skalibs also yields build failures.
Signed-off-by: J. Neuschäfer <j.neuschaefer@gmx.net>
[yann.morin.1998@free.fr:
- cleanup commit title
- reword commit log
- include explanations why all bumps are done at once
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
- Switch to an active fork (which is already used by Fedora 39)
- Drop patch (not needed since
be272278c3)
- HAVE_STRSEP has been dropped since
0f7c525da6
- CFLAGS and LDFLAGS must be set since
6eac74e7ef
- This bump will fix the following build failure with gcc 14 thanks to
be272278c3:
dhcpdump.c: In function 'pcap_callback':
dhcpdump.c:153:17: error: implicit declaration of function 'strftime' [-Wimplicit-function-declaration]
153 | strftime(timestamp, sizeof(timestamp), "%Y-%m-%d %H:%M:%S.",
| ^~~~~~~~
dhcpdump.c:28:1: note: include '<time.h>' or provide a declaration of 'strftime'
27 | #include "dhcp_options.h"
+++ |+#include <time.h>
28 |
https://github.com/bbonev/dhcpdump/releases/tag/v1.9
Fixes:
- http://autobuild.buildroot.org/results/9e559d634ac4e06f74f7b9e0402e45209aef2952
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Podman is command line compatible with Docker, there's no need to
require contributors to install Docker to run checks before sending
patches.
The additional "--userns=keep-id" option is necessary because unlike
Docker Podman creates a user namespace for containers by
default. Without keep-id the repository and pre-existing output files
belong to root inside the container namespace, breaking writes,
certain Git safety checks, and possibly all access (if the user is
using a strict umask).
Signed-off-by: Fiona Klute <fiona.klute+wiwa@gmx.de>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Now that the zynq_* defconfigs have migrated to xilinx_2024.1, remove the
older hashes.
Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This patch bumps the zynq_microzed_defconfig to xilinx-v2024.1 which includes
the following updates:
- Linux v6.6.10
- U-Boot v2024.01
Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This patch bumps the zynq_zed_defconfig to xilinx-v2024.1 which includes
the following updates:
- Linux v6.6.10
- U-Boot v2024.01
Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This patch bumps the zynq_zc706_defconfig to xilinx-v2024.1 which includes
the following updates:
- Linux v6.6.10
- U-Boot v2024.01
Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This patch bumps the zynq_zc702_defconfig to xilinx-v2024.1 which includes
the following updates:
- Linux v6.6.10
- U-Boot v2024.01
Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The zynq/zynqmp post-image scripts are now identical, so replace the zynq
copy with a symlink to limit redundancy.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Linux 6.6 includes a xilinx directory in the dts directory structure for zynq
boards. This patch updates the post-image.sh to match the zynqmp post-image.sh
in order to support this change.
Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Add the Linux and u-boot hashes for xilinx_2024.1 release.
xilinx_2024.1 release includes:
- uboot 2024.01
- linux 6.6.10
Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
And enable BR2_DOWNLOAD_FORCE_CHECK_HASHES. With this, we can now drop the
defconfig from .checkpackageignore.
Furthermore, the use of the directory board/atmel/at91sam9x5ek/patches
for all 4 at91sam9x5ek*_defconfig configurations automatically fixes the
Linux compilation failure for the at91sam9x5ek_defconfig,
at91sam9x5ek_mmc_defconfig, and at91sam9x5ek_mmc_dev_defconfig
configurations as well.
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
[Peter: fix u-boot hash]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The Linux kernel failed to build since commit e88225ed88 (package/binutils:
make 2.41 the default version). The new version contains the commit
790756c7e0229 ("ARM: 8933/1: replace Sun/Solaris style flag on section
directive") that fixes the issue.
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Acked-by: David Lechner <david@lechnology.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Most boards use BR2_KERNEL_HEADERS_AS_KERNEL with their custom kernels.
So when creating their custom hash files, the linux-headers.hash is the
same as linux.hash. In this case we symlink linux-headers to linux to
make maintenance easier. Update the add-custom-hashes tool to explicitly
handle this case.
Signed-off-by: Brandon Maier <brandon.maier@collins.com>
[Peter: use cmp -s]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Ccache CMake build system has some conditions that automatically
enables a developer mode (sets CCACHE_DEV_MODE=ON). See [1].
More specifically, if CCACHE_DEV_MODE is unset AND the environment
variable "CI" is set, CCACHE_DEV_MODE is set to "ON".
This situation can happen when Buildroot builds are executed in
Jenkins jobs, for example. Since Buildroot does not set
CCACHE_DEV_MODE and Jenkins sets the "CI" environment variable,
this ccache developer mode can be enabled in an unexpected way
for the Buildroot user. For example, it happened that a Jenkins build
breaks, while the build with the same configuration in the user
session is working.
One of the effects of enabling this ccache developer mode, is to treat
compiler warnings as errors, see [3]. This can lead to build error,
depending on the ccache version and the host compiler being used.
This behavior can be reproduced and observed, with commands:
cat > .config <<EOF
BR2_aarch64=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_CCACHE=y
BR2_PACKAGE_BUSYBOX=y
EOF
make olddefconfig
make clean
make host-ccache
Outputs:
...
-- Ccache version: 4.9.1
-- Ccache dev mode: OFF
-- Setting CMAKE_BUILD_TYPE to Release as none was specified.
...
Whereas:
make clean
CI=true make host-ccache
Outputs:
...
-- Ccache version: 4.9.1
-- Ccache dev mode: ON
-- Setting CMAKE_BUILD_TYPE to Debug as none was specified.
...
For a failure example: on Fedora 40 with host gcc 14.1.1, Buildroot at
tag 2024.02 has ccache 4.8.2. Host ccache can fail, when building with
"CI=true make host-ccache" with output:
/buildroot/output/build/host-ccache-4.8.2/src/third_party/fmt/core.h:3119:44: in 'constexpr' expansion of 'fmt::v8::make_format_args<>(args#0, args#1)'
/buildroot/output/build/host-ccache-4.8.2/src/third_party/fmt/core.h:1706:15: error: possibly dangling reference to a temporary [-Werror=dangling-reference]
1706 | const auto& arg = arg_mapper<Context>().map(std::forward<T>(val));
| ^~~
This commit sets CCACHE_DEV_MODE=OFF to make the ccache behavior more
deterministic in Buildroot, independently of being used in a CI tool
or not.
[1] https://github.com/ccache/ccache/blob/v4.9.1/CMakeLists.txt#L56
[2] https://github.com/jenkinsci/jenkins/blob/jenkins-2.459/core/src/main/java/jenkins/model/CoreEnvironmentContributor.java#L43
[3] https://github.com/ccache/ccache/blob/v4.9.1/cmake/StandardWarnings.cmake#L5
Reported-by: Xavier Roumegue <xroumegue@gmail.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>