As suggested by Arnout during review of previous iteration, add a patch
to uboot-tools so it uses CFLAGS and not HOSTCFLAGS when building cross
tools
Fixes:
- http://autobuild.buildroot.org/results/915b509e814bda16be54a24276b9c740c51e5770
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
This commit adds an option to install fit_check_sign to target for fit
image validation.
This will allow a fit image to have its signature and hashes validated
from Linux, assuming a device-tree of keys (the same as which is in
u-boot) is available.
Signed-off-by: Sam Voss <sam.voss@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
When CONFIG_FIT_SIGNATURE is enabled for building,
CONFIG_FIT_SIGNATURE_MAX_SIZE must be defined since it's a dependency of
CONFIG_FIT_SIGNATURE. Using uboot Kconfig, CONFIG_GIT_SIGNATURE_MAX_SIZE
is set to its default(0x10000000) according to Kconfig, but Buildroot
doesn't use uboot Kconfig, it passes directly CONFIG_* as make
arguments.
Append CONFIG_FIT_SIGNATURE_MAX_SIZE=0x10000000 after
CONFIG_FIT_SIGNATURE=y to UBOOT_TOOLS_MAKE_OPTS and
HOST_UBOOT_TOOLS_MAKE_OPTS.
Fixes:
http://autobuild.buildroot.net/results/612/6126848e08d9273911e7d5b0151847aa2293ed87/http://autobuild.buildroot.net/results/b49/b49ae4977b605ed24783161618f383551f1662b8/
Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
The U-Boot tools code uses some C99 constructs, but old compilers such
as gcc 4.7 don't default to -std=c99. This commit adds a patch,
submitted upstream, that makes sure host tools are built with
-std=gnu99 (because the U-Boot code uses GNU extensions).
Fixes:
http://autobuild.buildroot.net/results/5cc55f5eabd5005e071ad4eabab8202604ac7b66/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Adapt patch 0002 and 0003 for version 2019.01.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Drop patch 0004 as it is already applied upstream.
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
U-Boot host programs fail to build when libfdt-devel is installed
system-wide, with errors like this:
HOSTCC tools/aisimage.o
In file included from tools/../include/../lib/libfdt/libfdt.h:10:0,
from tools/../include/libfdt.h:1,
from tools/fdt_host.h:11,
from tools/imagetool.h:24,
from tools/aisimage.c:8:
/usr/include/libfdt_env.h:70:30: error: conflicting types for ‘fdt64_t’
typedef uint64_t FDT_BITWISE fdt64_t;
^~~~~~~
In file included from <command-line>:0:0:
././include/libfdt_env.h:19:16: note: previous declaration of ‘fdt64_t’ was here
typedef __be64 fdt64_t;
^~~~~~~
In file included from ././include/libfdt_env.h:12:0,
from <command-line>:0:
/usr/include/libfdt_env.h:90:24: error: expected ‘)’ before ‘x’
static inline uint32_t fdt32_to_cpu(fdt32_t x)
^
This commit backports an upstream patch that fixes this problem.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Drop patch 0004-uboot-tools-disable-pylibfdt.patch. The issue addressed by
this patch has been fixed in upstream commit
15b97f5c5e6d88e0560c6928f3acd01c999a494d.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Tested-by: Matthew Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit fixes the warnings reported by check-package on the help
text of all package Config.in files, related to the formatting of the
help text: should start with a tab, then 2 spaces, then at most 62
characters.
The vast majority of warnings fixed were caused by too long lines. A
few warnings were related to spaces being used instead of a tab to
indent the help text.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since uboot 2017.09 path to dtc will be configured via Kconfig. As BR
skips this step for uboot-tools building one has to provide
CONFIG_MKIMAGE_DTC_PATH=dtc on the build command line. Otherwise
mkimage will not be able to create FIT images, i.e.:
mkimage -f kernel-fit.its kernel-fit.itb
will fail with very weird errors.
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Drop patch 0005 as it has already been applied upstream.
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The 'env' target has been renamed to 'envtools' so change it
accordingly.
Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Tested-by: Jan Kundrát <jan.kundrat@cesnet.cz>
Reviewed-by: Jan Kundrát <jan.kundrat@cesnet.cz>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The current U-Boot build system assumes that if swig is installed on
the host system, it should build pylibfdt, without checking if other
dependencies are available. This causes a number of build failures.
This commit fixes that by using concepts from the future upstream fix
(post 2017.11), which sets up a kconfig variable for pylibfdt and
conditionally enables the swig wrapper creation (default=n).
Relevant upstream patches under review:
- https://patchwork.ozlabs.org/patch/826742/
- https://patchwork.ozlabs.org/patch/826752/
This patch only affects uboot-tools, in which we never need
pylibfdt. The logic in the uboot package, with its
BR2_TARGET_UBOOT_NEEDS_PYLIBFDT option, remains unchanged.
Fixes (one of many):
http://autobuild.buildroot.net/results/f9e13caae9b31c9dcde7d24caecc036324f269cc
Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
Tested-by: Jan Kundrát <jan.kundrat@cesnet.cz>
Reviewed-by: Jan Kundrát <jan.kundrat@cesnet.cz>
[Thomas: improved commit log.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since things are no longer installed in $(HOST_DIR)/usr, the callers
should also not refer to it.
This is a mechanical change with
git grep -l '$(HOST_DIR)/usr/bin' | xargs sed -i 's%$(HOST_DIR)/usr/bin%$(HOST_DIR)/bin%g'
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Commit log 0e0ea8cf5e (uboot-tools: install libubootenv to staging)
mentions that installation is done in <pkg>_INSTALL_STAGING_CMDS directly, but
forgot to remove the now empty UBOOT_TOOLS_INSTALL_LIBUBOOTENV.
Cc: Jörg Krause <joerg.krause@embedded.rocks>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Bump to version 2017.05 and also remove the patches that have been
upstreamed.
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The current tools build assumes the host system when trying to detect if
swig/python are present. It then uses those tools from the path.
The upstream RFC included this commit set's patch but offered up
discussion on how to cleanly introduce a better method for detecting
swig and using the tools. The tools build really needs to be sysroot
and prefix/host dir tools aware.
Upsteam submission for RFC:
https://lists.denx.de/pipermail/u-boot/2017-May/289520.html
Workaround for:
http://autobuild.buildroot.net/results/6d52ac8bb71012aea6fc4c679691b31a3366728b
Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We want to use SPDX identifier for license strings as much as possible.
SPDX short identifier for GPLv2/GPLv2+ is GPL-2.0/GPL-2.0+.
This change is done by using following command.
find . -name "*.mk" | xargs sed -ri '/LICENSE( )?[\+:]?=/s/\<GPLv2\>/GPL-2.0/g'
Signed-off-by: Rahul Bedarkar <rahulbedarkar89@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016.09.01 is a bugfix release, so bump to this version.
Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When commit 031130a4 added the dependency on shared libs for FIT support
in uboot-tools, the dependency of the comment was added exactly as the
dependency of the symbol.
That means the comment is shown when FIT support is possible, and hidden
when it is not, while we want it the other way around...
Fix the dependency.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
BR2_PACKAGE_UBOOT_TOOLS_FIT_SUPPORT selects BR2_PACKAGE_DTC, but forgets
to depends on !BR2_STATIC_LIBS like BR2_PACKAGE_DTC does.
Fixes the following kconfig warning:
arning: (BR2_PACKAGE_UBOOT_TOOLS_FIT_SUPPORT && BR2_PACKAGE_KVMTOOL && BR2_PACKAGE_UBOOT_TOOLS_MKIMAGE_FIT_SIGNATURE_SUPPORT) selects BR2_PACKAGE_DTC which has unmet direct dependencies (!BR2_STATIC_LIBS)
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The removal of the unconditional compilation and linking of some .o files were
missed when porting the patch 0003 to the version 2016.07, leading to errors
like these when FIT support is enabled:
tools/fit_common.o: In function `fit_verify_header':
fit_common.c:(.text+0x0): multiple definition of `fit_verify_header'
tools/fit_common.o:fit_common.c:(.text+0x0): first defined here
tools/fit_common.o: In function `fit_check_image_types':
fit_common.c:(.text+0x10): multiple definition of `fit_check_image_types'
When FIT support is disabled, the build does not fail but it includes FIT
support.
Fix the patch 0003 to be equivalent to the original one.
Fixes:
http://autobuild.buildroot.net/results/7494a5b22e3df1c05cdcc47670deaf54d9e04133http://autobuild.buildroot.net/results/f98f30bbf9d4cdde37a96b9310873d83dd649c54
Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Reported-by: Masahiro Yamada <yamada.masahiro@socionext.com>
CC: Fabio Estevam <festevam@gmail.com>
CC: Carlos Santos <casantos@datacom.ind.br>
Tested-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fix several issues regarding the support for Flat Image Trees (FIT).
- Add a patch to really allow turning FIT support on/off, which was not
possible due to bugs in the code and in the tools Makefile. This patch
has been sent upstream but not applied there, yet.
- Use independent options to control FIT support on host and target
packages.
- Subordinate FIT signature support to the activation of FIT support, in
the target package, not to mkimage installation.
- Add a dependence on the dtc utilities because mkimage needs it when
FIT is enabled; otherwise mkimage fails like this:
$ mkimage -f firmware.its firmware.im
sh: dtc: command not found
- Add BR2_PACKAGE_UBOOT_TOOLS_MKIMAGE_FIT_SIGNATURE_SUPPORT to the
Config.in.legacy file.
Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
They were differences against Das U-Boot versions 2015.07 and 2015.04.
Generating again helps to apply them with "git am".
Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Improve the descriptions of the knobs to install mkimage, mkenvimage,
dumpimage, fw_printenv and fw_setenv.
Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Otherwise BR2_STRIP_xxxx setup is ignored and they are always stripped.
Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Bump to version 2016.05 and also remove patch
003-tools-env-bug-config-structs-must-be-defined-in-tool.patch, as it is
upstreamed now.
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Backport a patch from upstream [1] to fix linking with libubootenv:
fw_env.c:(.text+0x94): undefined reference to `common_args'
[1] http://git.denx.de/?p=u-boot.git;a=commit;h=43cb65b7a00e4759427a6e4b8a02039e43dab5a5
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
libubootenv is required by swupdate.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
[Thomas: do the installation directly in <pkg>_INSTALL_STAGING_CMDS.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The tool dumpimage extracts data from U-Boot images.
U-Boot added dumpimage tool on release 2014.01.
This commit allows installation on target and host.
Signed-off-by: Paulo Zaneti <paulo.zaneti@datacom.ind.br>
Tested-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Commit 95f9a5c3df fixed the static
linking issue of uboot-tools mkimage against OpenSSL, but in the
process broke the dynamic linking case. This commit adjusts the
uboot-tools patch to make sure both static and dynamic linking work.
An updated version of the patch has been submitted upstream.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add a patch to U-Boot to use pkg-config to get the OpenSSL link flags
when pkg-config is available. This allows to make sure that static
linking works properly. The patch requires adding $(TARGET_MAKE_ENV)
so that the Buildroot provided pkg-config is used instead of the host
one.
The U-Boot patch has been submitted upstream.
Fixes:
http://autobuild.buildroot.org/results/a9f/a9f316cd076a74b8730ce4cdcdb8176da4ed9eb3/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: Gergely Imreh <imrehg@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>