From: "Yann E. MORIN" <yann.morin.1998@free.fr>
To: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Adam Duskett <adam.duskett@amarulasolutions.com>,
Michael Trimarchi <michael@amarulasolutions.com>,
buildroot@buildroot.org, Asaf Kahlon <asafka7@gmail.com>,
Angelo Compagnucci <angelo@amarulasolutions.com>
Subject: Re: [Buildroot] [PATCH/next vRFCv2 3/3] package/flutter-engine: new package
Date: Wed, 9 Aug 2023 22:22:04 +0200 [thread overview]
Message-ID: <20230809202204.GD421096@scaer> (raw)
In-Reply-To: <20230808195621.1c5d4242@windsurf>
Thomas, All,
On 2023-08-08 19:56 +0200, Thomas Petazzoni via buildroot spake thusly:
> On Mon, 7 Aug 2023 18:35:27 -0600
> Adam Duskett <adam.duskett@amarulasolutions.com> wrote:
> > index 0000000000..572c055bea
> > --- /dev/null
> > +++ b/package/flutter-engine/gen-tarball
> > @@ -0,0 +1,108 @@
> > +#!/usr/bin/env bash
> > +# Call gclient and generate a flutter-engine source tarball if one does not
> > +# already exist.
> > +#
> > +# Author: Adam Duskett <adam.duskett@amarulasolutions.com>
Authorship is not needed: it's tracked in git.
Also, it is going to be wrong the moment someone else changes that file.
Using the authorship from git will always be correct, though.
[--SNIP--]
> > +main() {
> > + parse_opts "${@}"
> > + if [ ! -e "${TARBALL}" ]; then
>
> I'm not sure about this condition. Why is there? If the tarball is
> already there, I would expect this tool to re-generate it and overwrite
> it, rather than "do nothing".
Well, we do not redownload an archive if it is already downloaded. This
is what this test does: skip the download if the archive is already
present lcally.
We have the same test package/pkg-gemneric.mk line 190:
if test ! -e $($(PKG)_DL_DIR)/`basename $$p` ; then
and in the download wrapper, line 67-onward:
67 # If the output file already exists and:
68 # - there's no .hash file: do not download it again and exit promptly
69 # - matches all its hashes: do not download it again and exit promptly
70 # - fails at least one of its hashes: force a re-download
71 # - there's no hash (but a .hash file): consider it a hard error
72 if [ -e "${output}" ]; then
73 if support/download/check-hash ${quiet} "${hfile}" "${output}" "${output##*/}"; then
74 exit 0
So this test does exactly the same thing.
Regards,
Yann E. MORIN.
> Thanks for this work. Seriously, it looks quite good, and close to a
> state where it can be merged. I think it no longer needs to be in the
> "RFC" state.
Yes, this is a very good work overall, for such a complex stack.
We've been discussing this series on IRC, too, and it looks like there
are missing pieces. Adam will correct me where I'm wrong, but here's
what I understood from our discussion:
1. flutter-engine is a set of libraries that implement the runtime,
this is what this package will provide, and flutter apps will have
to select it and have it in their _DEPENDENCIES;
2. there is a package, flutter-sdk-bin, that provides a compiler to
compiler flutter apps into Dart code; we'll need to have it packaged
as host-flutter-sdk-bin; flutter apps will need to have that in
their _DEPENDENCIES;
3. there is another package (which one?) that provide 'flutter', an
executable that is in charge of starting flutter apps on the target.
It looks like flutter-pi is such a package, but there might be
others.
So, if I understood everything (far from granted!), the sequence is
about to look like this:
flutter app source code
|
v
flutter-sdk-bin to compile
|
v
Dart code
|
v
Target in /usr/share/flutter/app-name
flutter-pi or other
|
v
Target in /usr/bin/flutter
Then at runtime on the target:
$ /usr/bin/flutter app-name
So, there are a lot more details to sort out, but it looks like the full
stack is about this shape. More or less... Maybe less than more... Who
knows?
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
next prev parent reply other threads:[~2023-08-09 20:22 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-08 0:35 [Buildroot] [PATCH/next vRFCv2 0/3] Initial flutter packages Adam Duskett
2023-08-08 0:35 ` [Buildroot] [PATCH/next vRFCv2 1/3] package/python-httplib2: add host variant Adam Duskett
2023-08-08 0:35 ` [Buildroot] [PATCH/next vRFCv2 2/3] package/depot-tools: new package Adam Duskett
2023-08-08 17:33 ` Thomas Petazzoni via buildroot
2023-08-08 0:35 ` [Buildroot] [PATCH/next vRFCv2 3/3] package/flutter-engine: " Adam Duskett
2023-08-08 17:56 ` Thomas Petazzoni via buildroot
2023-08-09 20:22 ` Yann E. MORIN [this message]
2023-08-09 20:55 ` Thomas Petazzoni via buildroot
2023-08-08 19:37 ` [Buildroot] [PATCH/next vRFCv2 0/3] Initial flutter packages Thomas Petazzoni via buildroot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230809202204.GD421096@scaer \
--to=yann.morin.1998@free.fr \
--cc=adam.duskett@amarulasolutions.com \
--cc=angelo@amarulasolutions.com \
--cc=asafka7@gmail.com \
--cc=buildroot@buildroot.org \
--cc=michael@amarulasolutions.com \
--cc=thomas.petazzoni@bootlin.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.