[RFC PATCH 6/9] mkimage_fit_atf.sh: produce working binaries by default

Tom Rini trini at konsulko.com
Tue Mar 31 16:58:39 CEST 2020


On Mon, Mar 23, 2020 at 04:24:15PM +0100, Petr Štetiar wrote:
> Michal Simek <michal.simek at xilinx.com> [2020-03-23 14:58:55]:
> 
> Hi,
> 
> > Plan is to merge all of these to one shell script because most of the
> > content in that script is very similar.
> 
> to me it all just seems as values and templates hidden inside shell script
> called generator.  Each of this generators uses/references 1-N variables, 1-N
> out-of-tree dependencies and 1-N DT sections.
> 
> So instead of cooking custom shell templating engine I took different
> approach[1] and simply removed the shell script generator in favor of Python
> based templating engine, allowing for ITS dependency tracking and values
> directly in Make.
> 
> Lets see what is preferred.

An example of one is never enough to see if something is generic enough
for everyone.  Even if you can't functional-test other platforms an
initial conversion will help and allow others to test.  And it'll help
show if the idea is or is not cleaner.

> > The issue which I see is that patch above is changing current behavior
> > which means when this is applied all travis/gitlab/azure jobs will fail
> > because none has setup this config option.
> 
> If that is desired, then in order to keep the current behavior, I see
> following options:
> 
>  1. Disable building of boards having out-of-tree dependencies on build bot/CI
>  2. Enable BUILDBOT_BROKEN_BINARIES=y by default
>  3. Add detection of various build bot/CI platforms and enable
>     BUILDBOT_BROKEN_BINARIES=y by default, which then could cause further issues
>     when one would actually run test the binaries from build bot/CI
>  4. Include the out-of-tree dependencies (unlikely)

Cycling back here, sorry for the delay.  First, you need to make CI
still work.  And we can't remove boards that require something else from
CI as that means basically dropping all of arm64.
 
> What is your suggestion?

There's two sides to this.  First, the problem of "all of these similar
but not quite the same tools" needs a generic solution.  A template
based tool is probably the right direction here, yes.

But second, what would it take to modify the CI jobs to pass in an empty
file or whatever so they link but not function.  So that a real user
would have to provide a file too.  And whichever of Azure, GitLab or
Travis is easier for you to test / adapt for this, I can update the
others once it looks clean.  Thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200331/ddbb6a7e/attachment.sig>


More information about the U-Boot mailing list