Re: [OE-core] [PATCH] u-boot-tools: Improve build preparation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Nov 28, 2018 at 8:58 AM Otavio Salvador <otavio@xxxxxxxxxxxxxxxx> wrote:
> On Tue, Nov 27, 2018 at 6:49 PM Alexey Brodkin
> <alexey.brodkin@xxxxxxxxxxxx> wrote:
> > On Tue, 2018-11-27 at 17:52 -0200, Otavio Salvador wrote:
> > > On Tue, Nov 27, 2018 at 5:30 PM Otavio Salvador <otavio@xxxxxxxxxxxxxxxx> wrote:
> > > > On Tue, Nov 27, 2018 at 5:13 PM Alexey Brodkin
> > > > <alexey.brodkin@xxxxxxxxxxxx> wrote:
> > > > > Even though we're not going to build here real U-Boot binary
> > > > > it is still required to "configure" U-Boot to get get to the
> > > > > tools building.
> > > > >
> > > > > We used to use "sandbox_defconfig" for that purpose but
> > > > > since U-Boot v2018.11 it started to cause problems [1] due to [2].
> > > > >
> > > > > So to have less dependencies let's create super minimalistic
> > > > > configuration which is good enough to allow us to run "make tools".
> > > > >
> > > > > [1]
> > > > > https://urldefense.proofpoint.com/v2/url?u=http-3A__errors.yoctoproject.org_Errors_Details_202185_&d=DwIBaQ&c=DPL6_X_6JkXFx7AXWqB0tg&r=lqdeeSSEes0GFDDl656eViXO7breS55ytWkhpk5R81I&m=6GBkAGgxs4IOh0rJ4joj36Xukb_msE_tdIIJQXh8Gbg&s=vuvAMfkM9WIKHek7mwuwSjWKKpUcKJ-zCcKypEfxCuw&e=
> > > > > [2]
> > > > > https://urldefense.proofpoint.com/v2/url?u=http-3A__git.denx.de_-3Fp-3Du-2Dboot.git-3Ba-3Dcommitdiff-3Bh-3Da4958a71017fb142542f977c843c5fce769fc6ea&d=DwIBaQ&c=DPL6_X_6JkXFx7AXWqB0tg&r=lqdeeSSEes0GFDDl656eViXO7breS55ytWkhpk5R81I&m=6GBkAGgxs4IOh0rJ4joj36Xukb_msE_tdIIJQXh8Gbg&s=GN4U6Of_hi-W_5CEu3RvRUIVEjgaNwnK8CarkwIly4Y&e=
> > > > >
> > > > > Signed-off-by: Alexey Brodkin <abrodkin@xxxxxxxxxxxx>
> > > >
> > > > To allow extended use, we need to enable CONFIG_FIT_SIGNATURE
> > > > otherwise we won't have the support.
> > > >
> > > > See:
> > > >
> > > > # MXSImage needs LibSSL
> > > > ifneq ($(CONFIG_MX23)$(CONFIG_MX28)$(CONFIG_ARMADA_38X)$(CONFIG_ARMADA_39X)$(CONFIG_FIT_SIGNATURE),)
> > > > HOSTLOADLIBES_mkimage += \
> > > >         $(shell pkg-config --libs libssl libcrypto 2> /dev/null ||
> > > > echo "-lssl -lcrypto")
> > > >
> > > > If you do that, we can likely rely on this and avoid some extra tools
> > > > packages (for example on meta-freescale).
> > >
> > > Looking at this, I am wondering if folowing wouldn't be a generic
> > > solution capable of upstreaming:
> > >
> > > diff --git a/configs/nativetools_defconfig b/configs/nativetools_defconfig
> > > new file mode 100644
> > > index 0000000000..be69bdf43a
> > > --- /dev/null
> > > +++ b/configs/nativetools_defconfig
> > > @@ -0,0 +1,3 @@
> > > +CONFIG_SYS_TEXT_BASE=0
> > > +CONFIG_FIT=y
> > > +CONFIG_FIT_SIGNATURE=y
> > > diff --git a/tools/Makefile b/tools/Makefile
> > > index 3c0521f655..e916d0cebb 100644
> > > --- a/tools/Makefile
> > > +++ b/tools/Makefile
> > > @@ -124,7 +124,7 @@ fit_info-objs   := $(dumpimage-mkimage-objs) fit_info.o
> > >  fit_check_sign-objs   := $(dumpimage-mkimage-objs) fit_check_sign.o
> > >  file2include-objs := file2include.o
> > >
> > > -ifneq ($(CONFIG_MX23)$(CONFIG_MX28),)
> > > +ifneq ($(CONFIG_MX23)$(CONFIG_MX28)$(CONFIG_FIT_SIGNATURE),)
> > >  # Add CONFIG_MXS into host CFLAGS, so we can check whether or not register
> > >  # the mxsimage support within tools/mxsimage.c .
> > >  HOSTCFLAGS_mxsimage.o += -DCONFIG_MXS
> >
> > So do you think there's a room for improvement in my patch for OE?
> > Or before we get a missing part for tools/Makefile there's nothing more
> > to be done in OE?
>
> You could use this attached patch (marking as Pending as it is still
> RFC). It allow us to drop or 'mxsboot' recipe on meta-freescale, for
> example.

Now... with patch...

-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9 9981-7854          Mobile: +1 (347) 903-9750
From 5731cafd83528f2d79476e6241f22d7f2618a364 Mon Sep 17 00:00:00 2001
From: Otavio Salvador <otavio@xxxxxxxxxxxxxxxx>
Date: Tue, 27 Nov 2018 18:14:11 -0200
Subject: [PATCH] tools: add a generic config for native tools building
Organization: O.S. Systems Software LTDA.

The motivation for this is to allow distributions to distribute all
possible tools in a generic way, avoiding the need of specific tools
building for each machine.

Especially on OpenEmbedded / Yocto Project ecosystem, it is very
common each BSP to end providing their specific tools when they need
to generate images for some SoC (e.g MX23 / MX28 in meta-freescale
case).

Using this, we can package the tools doing:

$: make tools-only_defconfig
$: make tools-only

Series-to: u-boot
Series-prefix: RFC
Series-cc: Alexey Brodkin <alexey.brodkin@xxxxxxxxxxxx>
Series-cc: Peter Robinson <pbrobinson@xxxxxxxxx>

Signed-off-by: Otavio Salvador <otavio@xxxxxxxxxxxxxxxx>
---
 configs/tools-only_defconfig | 3 +++
 tools/Makefile               | 2 +-
 2 files changed, 4 insertions(+), 1 deletion(-)
 create mode 100644 configs/tools-only_defconfig

diff --git a/configs/tools-only_defconfig b/configs/tools-only_defconfig
new file mode 100644
index 0000000000..be69bdf43a
--- /dev/null
+++ b/configs/tools-only_defconfig
@@ -0,0 +1,3 @@
+CONFIG_SYS_TEXT_BASE=0
+CONFIG_FIT=y
+CONFIG_FIT_SIGNATURE=y
diff --git a/tools/Makefile b/tools/Makefile
index 3c0521f655..e916d0cebb 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -124,7 +124,7 @@ fit_info-objs   := $(dumpimage-mkimage-objs) fit_info.o
 fit_check_sign-objs   := $(dumpimage-mkimage-objs) fit_check_sign.o
 file2include-objs := file2include.o
 
-ifneq ($(CONFIG_MX23)$(CONFIG_MX28),)
+ifneq ($(CONFIG_MX23)$(CONFIG_MX28)$(CONFIG_FIT_SIGNATURE),)
 # Add CONFIG_MXS into host CFLAGS, so we can check whether or not register
 # the mxsimage support within tools/mxsimage.c .
 HOSTCFLAGS_mxsimage.o += -DCONFIG_MXS
-- 
2.19.2

_______________________________________________
linux-snps-arc mailing list
linux-snps-arc@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/linux-snps-arc

[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux