Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v3 00/10] more flutter package improvements
@ 2024-01-17 22:50 Adam Duskett
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 01/10] package/ivi-homescreen: add standard_method_codec.h to keyboard manager plugin Adam Duskett
                   ` (10 more replies)
  0 siblings, 11 replies; 21+ messages in thread
From: Adam Duskett @ 2024-01-17 22:50 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

Change v2 -> v3:
  - Bump flutter-sdk-bin to 3.16.8
  - Bump flutter-engine to 3.16.8
  - Bump flutter-pi to 75e72fef8e8ce65ec72a002c00d9c6db4d1479d3

Changes v1 -> v2:
  - Bump flutter-sdk-bin to 3.16.7
  - Bump flutter-engine to 3.16.7

Most of these are self-explanitory and simple, however the depot-tools version
bump should be explained:

The current depot-tools version is from Jul 13 2023, and there is a bug where
when building with PPD enabled, building a Flutter application on my laptop
running Fedora 39 or even in the Debian 11 container fails due to permission
issues when running rsync such as:

/usr/bin/sed: couldn't open temporary file [...]/output/per-package/flutter-gallery/host/share/flutter/sdk/.vpython-root/0e1e32/lib/python3.8/sed763MrF: Permission denied
make: *** [package/pkg-generic.mk:267: [...]/output/build/flutter-gallery-2.10.2/.stamp_configured] Error 123

After several hours of attempting to find the exact cause of the issue by
parsing git logs of the depot_tools repository and cross-referencing bugs on
https://bugs.chromium.org/p/chromium/issues I am unable to determine the exact
reason why the problem occurs or the exact commit that fixes the issue.

However, updating depot-tools does indeed fix the issue, and looking at the
source code between 4e87f5bf and 8d14454b shows improvements to several bash
scripts, such as gclient, vpython3, and spid. All of which could be culprits
of this bug. As flutter-engine is the only package that uses host-depot-tools,
it is safe to update.

This permission bug is present on PPD and normal builds, but causes a build
to crash only on PPD because of rsyncing. On non-ppd builds, the bug only
causes some minor annoyance when trying to run `make clean` because permission
denials crop up when trying to remove the .vpython-root directory.

I can't remember, but I * think * the autobuilders don't select PPD yet, which
is probably why this bug hasn't caused any autobuild failures yet.


As for everything else:
  - Tested on Fedora 39 and Debian 11.
  - PPD and Non-PPD.
  - Docker and host.

Everything passes and works as expected.

Thanks!

Adam Duskett (10):
  package/ivi-homescreen: add standard_method_codec.h to keyboard
    manager plugin
  package/depot-tools: bump version to
    8d14454ba4a35fd9d2483842b08815a2357ec86f
  package/flutter-engine/Config.in: Drop nptl dependency
  package/flutter-sdk-bin: bump version to 3.16.8
  package/flutter-engine: bump version to 3.16.8
  package/flutter-pi: bump version to
    75e72fef8e8ce65ec72a002c00d9c6db4d1479d3
  package/flutter-pi/Config.in: propagate flutter-engine dependencies
  package/flutter-gallery: add a configure step
  package/flutter-gallery: fix build options
  package/flutter-gallery: clean up install_target_cmds

 package/depot-tools/depot-tools.hash          |  2 +-
 package/depot-tools/depot-tools.mk            |  2 +-
 package/flutter-engine/Config.in              | 10 +++---
 package/flutter-engine/flutter-engine.mk      |  2 +-
 package/flutter-gallery/flutter-gallery.mk    | 24 ++++++++++----
 package/flutter-pi/Config.in                  | 31 +++++++++++++++++--
 package/flutter-pi/flutter-pi.hash            |  2 +-
 package/flutter-pi/flutter-pi.mk              |  2 +-
 package/flutter-sdk-bin/flutter-sdk-bin.hash  |  2 +-
 package/flutter-sdk-bin/flutter-sdk-bin.mk    |  2 +-
 ...rs-to-the-audio-players-and-keyboar.patch} | 26 ++++++++++++++--
 11 files changed, 81 insertions(+), 24 deletions(-)
 rename package/ivi-homescreen/{0001-add-missing-headers-to-the-audio-players-plugin.patch => 0001-add-missing-headers-to-the-audio-players-and-keyboar.patch} (77%)

-- 
2.43.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Buildroot] [PATCH v3 01/10] package/ivi-homescreen: add standard_method_codec.h to keyboard manager plugin
  2024-01-17 22:50 [Buildroot] [PATCH v3 00/10] more flutter package improvements Adam Duskett
@ 2024-01-17 22:50 ` Adam Duskett
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 02/10] package/depot-tools: bump version to 8d14454ba4a35fd9d2483842b08815a2357ec86f Adam Duskett
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 21+ messages in thread
From: Adam Duskett @ 2024-01-17 22:50 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

The keyboard manager plugin is also missing the flutter/standard_method_codec.h
header.

  - Add shell/plugins/keyboard_manager/keyboard_manager.h to the patch.

  - Rename the patch to
    0001-add-missing-headers-to-the-audio-players-and-keyboar.patch

Upstream pull request updated as well.

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
 ...rs-to-the-audio-players-and-keyboar.patch} | 26 +++++++++++++++++--
 1 file changed, 24 insertions(+), 2 deletions(-)
 rename package/ivi-homescreen/{0001-add-missing-headers-to-the-audio-players-plugin.patch => 0001-add-missing-headers-to-the-audio-players-and-keyboar.patch} (77%)

diff --git a/package/ivi-homescreen/0001-add-missing-headers-to-the-audio-players-plugin.patch b/package/ivi-homescreen/0001-add-missing-headers-to-the-audio-players-and-keyboar.patch
similarity index 77%
rename from package/ivi-homescreen/0001-add-missing-headers-to-the-audio-players-plugin.patch
rename to package/ivi-homescreen/0001-add-missing-headers-to-the-audio-players-and-keyboar.patch
index c26fdba7f2..0d308b786b 100644
--- a/package/ivi-homescreen/0001-add-missing-headers-to-the-audio-players-plugin.patch
+++ b/package/ivi-homescreen/0001-add-missing-headers-to-the-audio-players-and-keyboar.patch
@@ -1,7 +1,8 @@
 From 7e35ea4fbd94a1604907069bb9cc2e2dff4b43c7 Mon Sep 17 00:00:00 2001
 From: Adam Duskett <adam.duskett@amarulasolutions.com>
 Date: Sat, 6 Jan 2024 14:18:56 -0700
-Subject: [PATCH] add missing headers to the audio-players plugin
+Subject: [PATCH] add missing headers to the audio-players and keyboard_manager
+ plugin
 
 Fixes flutter::StandardMethodCodec not being declared on the following lines:
 plugins/audio_players/audio_players_registry.cc:83
@@ -9,6 +10,7 @@ plugins/audio_players/audio_players_registry.cc:94
 plugins/audio_players/audio_players_registry.cc:152
 plugins/audio_players/audio_player.cc:257
 plugins/audio_players/audio_player.cc:623
+plugins/keyboard_manager/keyboard_manager.cc:25
 
 Upstream: https://github.com/toyota-connected/ivi-homescreen/pull/133
 
@@ -17,7 +19,8 @@ Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
  shell/plugins/audio_players/audio_player.cc           | 3 ++-
  shell/plugins/audio_players/audio_players.cc          | 4 +++-
  shell/plugins/audio_players/audio_players_registry.cc | 3 ++-
- 3 files changed, 7 insertions(+), 3 deletions(-)
+ shell/plugins/keyboard_manager/keyboard_manager.h     | 3 ++-
+ 4 files changed, 9 insertions(+), 4 deletions(-)
 
 diff --git a/shell/plugins/audio_players/audio_player.cc b/shell/plugins/audio_players/audio_player.cc
 index 56027eb..a85e9ae 100644
@@ -77,6 +80,25 @@ index 6c9ef33..00c4f45 100644
 -}  // namespace Plugins
 \ No newline at end of file
 +}  // namespace Plugins
+diff --git a/shell/plugins/keyboard_manager/keyboard_manager.h b/shell/plugins/keyboard_manager/keyboard_manager.h
+index 74b4e8d..cae1954 100644
+--- a/shell/plugins/keyboard_manager/keyboard_manager.h
++++ b/shell/plugins/keyboard_manager/keyboard_manager.h
+@@ -17,6 +17,7 @@
+ #pragma once
+ 
+ #include "flutter/fml/macros.h"
++#include <flutter/standard_method_codec.h>
+ 
+ #include <shell/platform/embedder/embedder.h>
+ 
+@@ -45,4 +46,4 @@ class KeyboardManager {
+ 
+  private:
+   static constexpr char kGetKeyboardState[] = "getKeyboardState";
+-};
+\ No newline at end of file
++};
 -- 
 2.43.0
 
-- 
2.43.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Buildroot] [PATCH v3 02/10] package/depot-tools: bump version to 8d14454ba4a35fd9d2483842b08815a2357ec86f
  2024-01-17 22:50 [Buildroot] [PATCH v3 00/10] more flutter package improvements Adam Duskett
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 01/10] package/ivi-homescreen: add standard_method_codec.h to keyboard manager plugin Adam Duskett
@ 2024-01-17 22:50 ` Adam Duskett
  2024-01-20 21:45   ` Yann E. MORIN
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 03/10] package/flutter-engine/Config.in: Drop nptl dependency Adam Duskett
                   ` (8 subsequent siblings)
  10 siblings, 1 reply; 21+ messages in thread
From: Adam Duskett @ 2024-01-17 22:50 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
 package/depot-tools/depot-tools.hash | 2 +-
 package/depot-tools/depot-tools.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/depot-tools/depot-tools.hash b/package/depot-tools/depot-tools.hash
index 2109096901..70218e4658 100644
--- a/package/depot-tools/depot-tools.hash
+++ b/package/depot-tools/depot-tools.hash
@@ -1,3 +1,3 @@
 # Locally calculated
-sha256  8e0bccdd6b1231f58d5453dc14a5e1d195295ac8d466dec34961e951e946b50b  depot-tools-4e87f5bfe244e903f712408ea68dc3c3a6fe2d00-br1.tar.gz
+sha256  5da23d7558975093c6a732f5743c7f224d16dd3f878a6a1b577b1b127a4098cc  depot-tools-8d14454ba4a35fd9d2483842b08815a2357ec86f-br1.tar.gz
 sha256  984523ee987f4e8b72d61df37d8f1189a7077cd4b77e41a397e35593b297a29d  LICENSE
diff --git a/package/depot-tools/depot-tools.mk b/package/depot-tools/depot-tools.mk
index e3b840f29a..634258ffbb 100644
--- a/package/depot-tools/depot-tools.mk
+++ b/package/depot-tools/depot-tools.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-DEPOT_TOOLS_VERSION = 4e87f5bfe244e903f712408ea68dc3c3a6fe2d00
+DEPOT_TOOLS_VERSION = 8d14454ba4a35fd9d2483842b08815a2357ec86f
 DEPOT_TOOLS_SITE = https://chromium.googlesource.com/chromium/tools/depot_tools
 DEPOT_TOOLS_SITE_METHOD = git
 DEPOT_TOOLS_LICENSE = BSD-3-Clause
-- 
2.43.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Buildroot] [PATCH v3 03/10] package/flutter-engine/Config.in: Drop nptl dependency
  2024-01-17 22:50 [Buildroot] [PATCH v3 00/10] more flutter package improvements Adam Duskett
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 01/10] package/ivi-homescreen: add standard_method_codec.h to keyboard manager plugin Adam Duskett
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 02/10] package/depot-tools: bump version to 8d14454ba4a35fd9d2483842b08815a2357ec86f Adam Duskett
@ 2024-01-17 22:50 ` Adam Duskett
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 04/10] package/flutter-sdk-bin: bump version to 3.16.8 Adam Duskett
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 21+ messages in thread
From: Adam Duskett @ 2024-01-17 22:50 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

As Yann mentioned in commit 9d8497e79de3ced144877ba6ee38cc5b7181aaeb, a
dependency on a glibc toolchain implies a dependency on
BR2_TOOLCHAIN_HAS_THREADS_NPTL. As such, remove the dependency from
package/flutter-engine/Config.in.

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
 package/flutter-engine/Config.in | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/package/flutter-engine/Config.in b/package/flutter-engine/Config.in
index 3c92e40f74..00bcd05cd4 100644
--- a/package/flutter-engine/Config.in
+++ b/package/flutter-engine/Config.in
@@ -11,7 +11,6 @@ config BR2_PACKAGE_FLUTTER_ENGINE
 	depends on BR2_PACKAGE_FLUTTER_ENGINE_ARCH_SUPPORTS
 	depends on BR2_TOOLCHAIN_USES_GLIBC
 	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5
-	depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # pthreads
 	depends on BR2_INSTALL_LIBSTDCPP
 	depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # std::shared_future
 	depends on !BR2_STATIC_LIBS
@@ -68,12 +67,11 @@ comment "flutter-engine needs an OpenGL or OpenGLES backend"
 	depends on BR2_PACKAGE_FLUTTER_ENGINE_ARCH_SUPPORTS
 	depends on !BR2_PACKAGE_HAS_LIBGL && !BR2_PACKAGE_HAS_LIBGLES
 
-comment "flutter-engine needs a glibc toolchain w/ wchar, C++, gcc >= 5, dynamic library, host gcc >= 5, NPTL"
+comment "flutter-engine needs a glibc toolchain w/ wchar, C++, gcc >= 5, dynamic library, host gcc >= 5"
 	depends on BR2_PACKAGE_FLUTTER_ENGINE_ARCH_SUPPORTS
-	depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_TOOLCHAIN_HAS_THREADS_NPTL \
-		|| !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_5 \
-		|| BR2_STATIC_LIBS || !BR2_USE_WCHAR \
-		|| !BR2_HOST_GCC_AT_LEAST_5
+	depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_INSTALL_LIBSTDCPP \
+		|| !BR2_TOOLCHAIN_GCC_AT_LEAST_5 || BR2_STATIC_LIBS \
+		|| !BR2_USE_WCHAR || !BR2_HOST_GCC_AT_LEAST_5
 
 comment "flutter-engine needs a toolchain not affected by GCC bug 64735"
 	depends on BR2_PACKAGE_FLUTTER_ENGINE_ARCH_SUPPORTS
-- 
2.43.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Buildroot] [PATCH v3 04/10] package/flutter-sdk-bin: bump version to 3.16.8
  2024-01-17 22:50 [Buildroot] [PATCH v3 00/10] more flutter package improvements Adam Duskett
                   ` (2 preceding siblings ...)
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 03/10] package/flutter-engine/Config.in: Drop nptl dependency Adam Duskett
@ 2024-01-17 22:50 ` Adam Duskett
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 05/10] package/flutter-engine: " Adam Duskett
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 21+ messages in thread
From: Adam Duskett @ 2024-01-17 22:50 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
 package/flutter-sdk-bin/flutter-sdk-bin.hash | 2 +-
 package/flutter-sdk-bin/flutter-sdk-bin.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/flutter-sdk-bin/flutter-sdk-bin.hash b/package/flutter-sdk-bin/flutter-sdk-bin.hash
index f0a855f2c9..48c9c7d7e3 100644
--- a/package/flutter-sdk-bin/flutter-sdk-bin.hash
+++ b/package/flutter-sdk-bin/flutter-sdk-bin.hash
@@ -1,3 +1,3 @@
 # Locally calculated
-sha256  57e59fa3a31be7e87b3847cdf782f1323578bbf70a0cd35f3615f01ab429ac29  flutter_linux_3.16.5-stable.tar.xz
+sha256  7cb12032cf615a92a7bc9042100f3f2af62df7df3ca3bee27f4b153fe218b239  flutter_linux_3.16.8-stable.tar.xz
 sha256  a598db94b6290ffbe10b5ecf911057b6a943351c727fdda9e5f2891d68700a20  LICENSE
diff --git a/package/flutter-sdk-bin/flutter-sdk-bin.mk b/package/flutter-sdk-bin/flutter-sdk-bin.mk
index 5e5042bea8..f644e5491a 100644
--- a/package/flutter-sdk-bin/flutter-sdk-bin.mk
+++ b/package/flutter-sdk-bin/flutter-sdk-bin.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-FLUTTER_SDK_BIN_VERSION = 3.16.5
+FLUTTER_SDK_BIN_VERSION = 3.16.8
 FLUTTER_SDK_BIN_SITE = https://storage.googleapis.com/flutter_infra_release/releases/stable/linux
 FLUTTER_SDK_BIN_SOURCE = flutter_linux_$(FLUTTER_SDK_BIN_VERSION)-stable.tar.xz
 FLUTTER_SDK_BIN_LICENSE = BSD-3-Clause
-- 
2.43.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Buildroot] [PATCH v3 05/10] package/flutter-engine: bump version to 3.16.8
  2024-01-17 22:50 [Buildroot] [PATCH v3 00/10] more flutter package improvements Adam Duskett
                   ` (3 preceding siblings ...)
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 04/10] package/flutter-sdk-bin: bump version to 3.16.8 Adam Duskett
@ 2024-01-17 22:50 ` Adam Duskett
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 06/10] package/flutter-pi: bump version to 75e72fef8e8ce65ec72a002c00d9c6db4d1479d3 Adam Duskett
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 21+ messages in thread
From: Adam Duskett @ 2024-01-17 22:50 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
 package/flutter-engine/flutter-engine.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/package/flutter-engine/flutter-engine.mk b/package/flutter-engine/flutter-engine.mk
index e972612097..d08274f546 100644
--- a/package/flutter-engine/flutter-engine.mk
+++ b/package/flutter-engine/flutter-engine.mk
@@ -21,7 +21,7 @@
 #
 # There is no hash provided, as the gn binary (used for configuration) relies
 # on the .git directories. As such, a reproducible tarball is not possible.
-FLUTTER_ENGINE_VERSION = 3.16.5
+FLUTTER_ENGINE_VERSION = 3.16.8
 
 # There is nothing for Buildroot to download. This is handled by gclient.
 FLUTTER_ENGINE_SITE =
-- 
2.43.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Buildroot] [PATCH v3 06/10] package/flutter-pi: bump version to 75e72fef8e8ce65ec72a002c00d9c6db4d1479d3
  2024-01-17 22:50 [Buildroot] [PATCH v3 00/10] more flutter package improvements Adam Duskett
                   ` (4 preceding siblings ...)
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 05/10] package/flutter-engine: " Adam Duskett
@ 2024-01-17 22:50 ` Adam Duskett
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 07/10] package/flutter-pi/Config.in: propagate flutter-engine dependencies Adam Duskett
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 21+ messages in thread
From: Adam Duskett @ 2024-01-17 22:50 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
 package/flutter-pi/flutter-pi.hash | 2 +-
 package/flutter-pi/flutter-pi.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/flutter-pi/flutter-pi.hash b/package/flutter-pi/flutter-pi.hash
index 6c5371d18a..df47d666bd 100644
--- a/package/flutter-pi/flutter-pi.hash
+++ b/package/flutter-pi/flutter-pi.hash
@@ -1,3 +1,3 @@
 # Locally calculated
-sha256  cf10ca9e26beea036ccf218e6a900de5f1f2000e00c03e7a48898c2a0c99f591  flutter-pi-f34d7bdbda713ba607b9625541ddfa314d9999a0-br1.tar.gz
+sha256  6b11f260567a4589915cf29ce2ffa62b6f80414242a65c616f01983ae3a177b7  flutter-pi-75e72fef8e8ce65ec72a002c00d9c6db4d1479d3-br1.tar.gz
 sha256  b34df9d3e1b4e5d1ba70b1740ec74b69f1189b44efd0c96b898b074ef8db1c70  LICENSE
diff --git a/package/flutter-pi/flutter-pi.mk b/package/flutter-pi/flutter-pi.mk
index ab640d704a..f1812b154e 100644
--- a/package/flutter-pi/flutter-pi.mk
+++ b/package/flutter-pi/flutter-pi.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-FLUTTER_PI_VERSION = f34d7bdbda713ba607b9625541ddfa314d9999a0
+FLUTTER_PI_VERSION = 75e72fef8e8ce65ec72a002c00d9c6db4d1479d3
 FLUTTER_PI_SITE = https://github.com/ardera/flutter-pi.git
 FLUTTER_PI_SITE_METHOD = git
 FLUTTER_PI_LICENSE = MIT
-- 
2.43.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Buildroot] [PATCH v3 07/10] package/flutter-pi/Config.in: propagate flutter-engine dependencies
  2024-01-17 22:50 [Buildroot] [PATCH v3 00/10] more flutter package improvements Adam Duskett
                   ` (5 preceding siblings ...)
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 06/10] package/flutter-pi: bump version to 75e72fef8e8ce65ec72a002c00d9c6db4d1479d3 Adam Duskett
@ 2024-01-17 22:50 ` Adam Duskett
  2024-01-20 22:56   ` Yann E. MORIN
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 08/10] package/flutter-gallery: add a configure step Adam Duskett
                   ` (3 subsequent siblings)
  10 siblings, 1 reply; 21+ messages in thread
From: Adam Duskett @ 2024-01-17 22:50 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

As discussed with Yann, it is better to make the dependencies of
flutter-pi verbose, even if flutter-engine and host-flutter-sdk-bin have
eleven dependencies combined. This change clears up any ambiguity a user may
have regarding the dependencies the flutter-pi package relies upon and why.

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
 package/flutter-pi/Config.in | 31 ++++++++++++++++++++++++++++---
 1 file changed, 28 insertions(+), 3 deletions(-)

diff --git a/package/flutter-pi/Config.in b/package/flutter-pi/Config.in
index 4bbdc3cc77..bb0e3702c1 100644
--- a/package/flutter-pi/Config.in
+++ b/package/flutter-pi/Config.in
@@ -1,9 +1,20 @@
 menuconfig BR2_PACKAGE_FLUTTER_PI
 	bool "flutter-pi"
-	depends on BR2_PACKAGE_FLUTTER_ENGINE
+	depends on BR2_PACKAGE_HOST_FLUTTER_SDK_BIN_ARCH_SUPPORTS
+	depends on BR2_PACKAGE_FLUTTER_ENGINE_ARCH_SUPPORTS
+	depends on BR2_HOST_GCC_AT_LEAST_5 # flutter-engine
+	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 # flutter-engine
+	depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # flutter-engine
+	depends on BR2_TOOLCHAIN_USES_GLIBC # flutter-engine
+	depends on BR2_INSTALL_LIBSTDCPP # flutter-engine
+	depends on !BR2_STATIC_LIBS # flutter-engine, wayland
+	depends on BR2_USE_WCHAR # flutter-engine
+	depends on BR2_PACKAGE_HAS_LIBGL || BR2_PACKAGE_HAS_LIBGLES # flutter-engine
 	depends on BR2_PACKAGE_HAS_LIBGBM
 	depends on BR2_PACKAGE_SYSTEMD # Event loop and dbus support
 	depends on BR2_PACKAGE_HAS_UDEV # libinput
+	select BR2_PACKAGE_HOST_FLUTTER_SDK_BIN
+	select BR2_PACKAGE_FLUTTER_ENGINE
 	select BR2_PACKAGE_LIBDRM
 	select BR2_PACKAGE_LIBINPUT
 	select BR2_PACKAGE_LIBXKBCOMMON
@@ -80,8 +91,22 @@ config BR2_PACKAGE_FLUTTER_PI_TEXT_INPUT_PLUGIN
 
 endif
 
-comment "flutter-pi needs flutter-engine"
-	depends on !BR2_PACKAGE_FLUTTER_ENGINE
+comment "flutter-pi needs a glibc toolchain w/ wchar, C++, gcc >= 5, dynamic library, host gcc >= 5"
+	depends on BR2_PACKAGE_HOST_FLUTTER_SDK_BIN_ARCH_SUPPORTS
+	depends on BR2_PACKAGE_FLUTTER_ENGINE_ARCH_SUPPORTS
+	depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_INSTALL_LIBSTDCPP \
+		|| !BR2_TOOLCHAIN_GCC_AT_LEAST_5 || BR2_STATIC_LIBS \
+		|| !BR2_USE_WCHAR || !BR2_HOST_GCC_AT_LEAST_5
+
+comment "flutter-pi needs a toolchain not affected by GCC bug 64735"
+	depends on BR2_PACKAGE_HOST_FLUTTER_SDK_BIN_ARCH_SUPPORTS
+	depends on BR2_PACKAGE_FLUTTER_ENGINE_ARCH_SUPPORTS
+	depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
+
+comment "flutter-pi needs an OpenGL or OpenGLES backend"
+	depends on BR2_PACKAGE_HOST_FLUTTER_SDK_BIN_ARCH_SUPPORTS
+	depends on BR2_PACKAGE_FLUTTER_ENGINE_ARCH_SUPPORTS
+	depends on !BR2_PACKAGE_HAS_LIBGL && !BR2_PACKAGE_HAS_LIBGLES
 
 comment "flutter-pi needs GBM, systemd, and udev"
 	depends on !BR2_PACKAGE_HAS_LIBGBM || \
-- 
2.43.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Buildroot] [PATCH v3 08/10] package/flutter-gallery: add a configure step
  2024-01-17 22:50 [Buildroot] [PATCH v3 00/10] more flutter package improvements Adam Duskett
                   ` (6 preceding siblings ...)
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 07/10] package/flutter-pi/Config.in: propagate flutter-engine dependencies Adam Duskett
@ 2024-01-17 22:50 ` Adam Duskett
  2024-01-20 21:46   ` Yann E. MORIN
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 09/10] package/flutter-gallery: fix build options Adam Duskett
                   ` (2 subsequent siblings)
  10 siblings, 1 reply; 21+ messages in thread
From: Adam Duskett @ 2024-01-17 22:50 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

To make the next patch easier to understand, add a configure step to the
flutter-gallery.mk file. The `$(HOST_FLUTTER_SDK_BIN_FLUTTER) build bundle`
command is placed in the configure step because it generates several files
needed for the flutter_gen_snapshot tool to generate the target .so file.

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
 package/flutter-gallery/flutter-gallery.mk | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/package/flutter-gallery/flutter-gallery.mk b/package/flutter-gallery/flutter-gallery.mk
index 57a476b1ab..50ddd9ffba 100644
--- a/package/flutter-gallery/flutter-gallery.mk
+++ b/package/flutter-gallery/flutter-gallery.mk
@@ -14,12 +14,17 @@ FLUTTER_GALLERY_DEPENDENCIES = \
 
 FLUTTER_GALLERY_INSTALL_DIR = $(TARGET_DIR)/usr/share/flutter/gallery/$(FLUTTER_ENGINE_RUNTIME_MODE)
 
-define FLUTTER_GALLERY_BUILD_CMDS
+define FLUTTER_GALLERY_CONFIGURE_CMDS
 	cd $(@D) && \
 		FLUTTER_RUNTIME_MODES=$(FLUTTER_ENGINE_RUNTIME_MODE) \
 		$(HOST_FLUTTER_SDK_BIN_FLUTTER) clean && \
-		$(HOST_FLUTTER_SDK_BIN_FLUTTER) packages get && \
-		$(HOST_FLUTTER_SDK_BIN_FLUTTER) build bundle && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) pub get && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) build bundle
+endef
+
+define FLUTTER_GALLERY_BUILD_CMDS
+	cd $(@D) && \
+		FLUTTER_RUNTIME_MODES=$(FLUTTER_ENGINE_RUNTIME_MODE) \
 		$(HOST_FLUTTER_SDK_BIN_DART_BIN) package:gallery/main.dart && \
 		$(HOST_FLUTTER_SDK_BIN_ENV) $(FLUTTER_ENGINE_GEN_SNAPSHOT) \
 			--deterministic \
-- 
2.43.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Buildroot] [PATCH v3 09/10] package/flutter-gallery: fix build options
  2024-01-17 22:50 [Buildroot] [PATCH v3 00/10] more flutter package improvements Adam Duskett
                   ` (7 preceding siblings ...)
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 08/10] package/flutter-gallery: add a configure step Adam Duskett
@ 2024-01-17 22:50 ` Adam Duskett
  2024-01-20 21:56   ` Yann E. MORIN
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 10/10] package/flutter-gallery: clean up install_target_cmds Adam Duskett
  2024-01-20 21:43 ` [Buildroot] [PATCH v3 00/10] more flutter package improvements Yann E. MORIN
  10 siblings, 1 reply; 21+ messages in thread
From: Adam Duskett @ 2024-01-17 22:50 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

As the flutter-gallery package is a reference package for users wishing to use
Flutter for their UX with Buildroot, this package must have the correct build
options. Indeed, this package currently starts and runs, but only because of
the 0001-remove-GetStorage.patch. Through testing, flutter-gallery fails to
run during the following scenario:
  - The xdg-user-dirs package is ported and present.
  - flutter-gallery depends on xdg-user-dirs.
  - The 0001-remove-GetStorage.patch file is removed.

After extensive testing and comparing the current build arguments against what
the meta-flutter repository for Yocto passes to all of the applications that
inherit flutter-app, it is clear that handling the dart_plugin_registrant.dart
file is missing from the dart arguments in the flutter-gallery build step.

As the documentation for the dart_plugin_registrant.dart file is nonexistent
in any official documentation. However, there is a comment from an issue on
the official dart-lang/sdk page on Github that explains what this file is
(and refers to the Dark SDK source code instead of official documentation.)

From https://github.com/dart-lang/sdk/issues/52506#issuecomment-1562806787:
```
The dart_plugin_registrant.dart is a very special file. It's neither included
in the Dart app nor any dependent packages. Rather it's an artificially
created file by the flutter tools. It contains logic to run plugin
registration logic.

A flutter build will eventually compile the Dart application where it will add
<dir>/.dart_tool/flutter_build/dart_plugin_registrant.dart as an extra source
file (see here). Additionally it will also inject that uri as a constant into
Dart source code via a -Dflutter.dart_plugin_registrant=<uri>.

Once the app runs it will access the
package:flutter/src/dart_plugin_registrant.dart:dartPluginRegistrantLibrary
constant and use it to look up the library object and then invoke the plugin
registration logic.
```

Now that what the dart_plugin_registrant.dart does is understood, we need to
pass the following to the dart binary during the flutter-gallery build step:

  -Dflutter.dart_plugin_registrant=file://[...]/dart_plugin_registrant.dart:
   Injects a file containing the logic to run the plugin registration logic as
   a constant into the flutter-application source code.

  --source file://$(@D)/.dart_tool/flutter_build/dart_plugin_registrant.dart:
    Adds the dart_plugin_registrant.dart file as a source file to compile.

  --source package:flutter/src/dart_plugin_registrant.dart:
    Binds the plugin implementation to the platform interface based on the
    configuration of the app's pubpec.yaml, and the plugin's pubspec.yaml.

The native_assets.yaml file provides the native-assets mapping for
@Native external functions. The flutter-gallery package has no functions
marked as @Native; however, calling "flutter build bundle" creates a blank
template "native_assets.yaml" file, which is safe to include in the build.
This line, while not necessary for flutter-gallery, may be helpful for other
users who use @Native external functions in their applications, and this
example makes porting other applications quicker and easier.

Finally, there is a known issue when using the dart_plugin_registrant.dart
file outlined here: https://github.com/flutter/flutter/issues/137972.

To summarize: If a user fails to pass the --obfuscate flag to gen_snapshsot
when using the dart_plugin_registrant.dart file, their application may fail
to start. One such application is Gallery, which I have independently verified.

As such, pass the --obfuscate flag to gen_snapshot to ensure that
flutter-gallery properly starts when building with the additional
dart_plugin_registrant.dart arguments above.

However, I acknowledge that the obfuscate flag hides function and class names
in compiled Dart code, and there are some cases when a user should avoid using
the flag. For example, when using the runtimeType API:
https://api.flutter.dev/flutter/dart-core/Object/runtimeType.html. However,
this is not the case with flutter-gallery, and the --obfuscate flag is needed.

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
 package/flutter-gallery/flutter-gallery.mk | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/package/flutter-gallery/flutter-gallery.mk b/package/flutter-gallery/flutter-gallery.mk
index 50ddd9ffba..e23dc399da 100644
--- a/package/flutter-gallery/flutter-gallery.mk
+++ b/package/flutter-gallery/flutter-gallery.mk
@@ -24,10 +24,15 @@ endef
 
 define FLUTTER_GALLERY_BUILD_CMDS
 	cd $(@D) && \
-		FLUTTER_RUNTIME_MODES=$(FLUTTER_ENGINE_RUNTIME_MODE) \
-		$(HOST_FLUTTER_SDK_BIN_DART_BIN) package:gallery/main.dart && \
+		$(HOST_FLUTTER_SDK_BIN_DART_BIN) \
+			-Dflutter.dart_plugin_registrant=file://$(@D)/.dart_tool/flutter_build/dart_plugin_registrant.dart \
+			--source file://$(@D)/.dart_tool/flutter_build/dart_plugin_registrant.dart \
+			--source package:flutter/src/dart_plugin_registrant.dart \
+			--native-assets $(@D)/.dart_tool/flutter_build/*/native_assets.yaml \
+			package:gallery/main.dart && \
 		$(HOST_FLUTTER_SDK_BIN_ENV) $(FLUTTER_ENGINE_GEN_SNAPSHOT) \
 			--deterministic \
+			--obfuscate \
 			--snapshot_kind=app-aot-elf \
 			--elf=libapp.so \
 			.dart_tool/flutter_build/*/app.dill
-- 
2.43.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Buildroot] [PATCH v3 10/10] package/flutter-gallery: clean up install_target_cmds
  2024-01-17 22:50 [Buildroot] [PATCH v3 00/10] more flutter package improvements Adam Duskett
                   ` (8 preceding siblings ...)
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 09/10] package/flutter-gallery: fix build options Adam Duskett
@ 2024-01-17 22:50 ` Adam Duskett
  2024-01-20 21:59   ` Yann E. MORIN
  2024-01-20 21:43 ` [Buildroot] [PATCH v3 00/10] more flutter package improvements Yann E. MORIN
  10 siblings, 1 reply; 21+ messages in thread
From: Adam Duskett @ 2024-01-17 22:50 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

Remove and create the kernel_blob.bin file in the flutter_assets directory:

  When Flutter compiles the source code, it creates the kernel_blob.bin file,
  a Dart Kernel Bytecode of the application.

  If kernel_blob.bin exists inside the flutter_assets directory, then the
  application source code can be extracted with nothing more than apktool.
  Not only is this a security risk, it's also redundant and a waste of space.

  Removing the kernel_blob.bin file generated for flutter-gallery saves 86M!
  Because this package is a reference package, and some applications may check
  if the kernel_blob.bin file exists, we also touch a blank kernel_blob.bin
  file.

Do not use relative symlinks:
  Users may not install their applications in the
  /usr/share/flutter/${package_name} directory. Because this is a reference
  application, using exact symlinks to icudtl.dat and libflutter_engine.so
  is preferable.

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
 package/flutter-gallery/flutter-gallery.mk | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/package/flutter-gallery/flutter-gallery.mk b/package/flutter-gallery/flutter-gallery.mk
index e23dc399da..6b0954cb32 100644
--- a/package/flutter-gallery/flutter-gallery.mk
+++ b/package/flutter-gallery/flutter-gallery.mk
@@ -45,10 +45,12 @@ define FLUTTER_GALLERY_INSTALL_TARGET_CMDS
 	$(INSTALL) -D -m 0755 $(@D)/libapp.so \
 		$(FLUTTER_GALLERY_INSTALL_DIR)/lib/libapp.so
 
-	ln -sf ../../../$(FLUTTER_ENGINE_RUNTIME_MODE)/data/icudtl.dat \
+	ln -sf /usr/share/flutter/$(FLUTTER_ENGINE_RUNTIME_MODE)/data/icudtl.dat \
 	$(FLUTTER_GALLERY_INSTALL_DIR)/data/
 
-	ln -sf ../../../../../lib/libflutter_engine.so $(FLUTTER_GALLERY_INSTALL_DIR)/lib/
+	ln -sf /usr/lib/libflutter_engine.so $(FLUTTER_GALLERY_INSTALL_DIR)/lib/
+	$(RM) $(FLUTTER_GALLERY_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
+	touch $(FLUTTER_GALLERY_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
 endef
 
 $(eval $(generic-package))
-- 
2.43.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 21+ messages in thread

* Re: [Buildroot] [PATCH v3 00/10] more flutter package improvements
  2024-01-17 22:50 [Buildroot] [PATCH v3 00/10] more flutter package improvements Adam Duskett
                   ` (9 preceding siblings ...)
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 10/10] package/flutter-gallery: clean up install_target_cmds Adam Duskett
@ 2024-01-20 21:43 ` Yann E. MORIN
  10 siblings, 0 replies; 21+ messages in thread
From: Yann E. MORIN @ 2024-01-20 21:43 UTC (permalink / raw)
  To: Adam Duskett; +Cc: buildroot

Adam, All,

On 2024-01-17 15:50 -0700, Adam Duskett spake thusly:
> Change v2 -> v3:
>   - Bump flutter-sdk-bin to 3.16.8
>   - Bump flutter-engine to 3.16.8
>   - Bump flutter-pi to 75e72fef8e8ce65ec72a002c00d9c6db4d1479d3
> 
> Changes v1 -> v2:
>   - Bump flutter-sdk-bin to 3.16.7
>   - Bump flutter-engine to 3.16.7
> 
> Most of these are self-explanitory and simple, however the depot-tools version
> bump should be explained:
> 
> The current depot-tools version is from Jul 13 2023, and there is a bug where
> when building with PPD enabled, building a Flutter application on my laptop
> running Fedora 39 or even in the Debian 11 container fails due to permission
> issues when running rsync such as:
> 
> /usr/bin/sed: couldn't open temporary file [...]/output/per-package/flutter-gallery/host/share/flutter/sdk/.vpython-root/0e1e32/lib/python3.8/sed763MrF: Permission denied
> make: *** [package/pkg-generic.mk:267: [...]/output/build/flutter-gallery-2.10.2/.stamp_configured] Error 123
> 
> After several hours of attempting to find the exact cause of the issue by
> parsing git logs of the depot_tools repository and cross-referencing bugs on
> https://bugs.chromium.org/p/chromium/issues I am unable to determine the exact
> reason why the problem occurs or the exact commit that fixes the issue.
> 
> However, updating depot-tools does indeed fix the issue, and looking at the
> source code between 4e87f5bf and 8d14454b shows improvements to several bash
> scripts, such as gclient, vpython3, and spid. All of which could be culprits
> of this bug. As flutter-engine is the only package that uses host-depot-tools,
> it is safe to update.
> 
> This permission bug is present on PPD and normal builds, but causes a build
> to crash only on PPD because of rsyncing. On non-ppd builds, the bug only
> causes some minor annoyance when trying to run `make clean` because permission
> denials crop up when trying to remove the .vpython-root directory.

The explanation for the depot-tools bump was very good, so I copied that
as the commit log for the corresponding patch.

> I can't remember, but I * think * the autobuilders don't select PPD yet, which
> is probably why this bug hasn't caused any autobuild failures yet.

Yes, PPD is enabled randomly on the autobuilders. That we have no such
failure for now is probably due to the low probability we end up having
a selection of packages enough to build a flutter app.

I'll reply to individual patches where I have some comments.

Regards,
Yann E. MORIN.

> As for everything else:
>   - Tested on Fedora 39 and Debian 11.
>   - PPD and Non-PPD.
>   - Docker and host.
> 
> Everything passes and works as expected.
> 
> Thanks!
> 
> Adam Duskett (10):
>   package/ivi-homescreen: add standard_method_codec.h to keyboard
>     manager plugin
>   package/depot-tools: bump version to
>     8d14454ba4a35fd9d2483842b08815a2357ec86f
>   package/flutter-engine/Config.in: Drop nptl dependency
>   package/flutter-sdk-bin: bump version to 3.16.8
>   package/flutter-engine: bump version to 3.16.8
>   package/flutter-pi: bump version to
>     75e72fef8e8ce65ec72a002c00d9c6db4d1479d3
>   package/flutter-pi/Config.in: propagate flutter-engine dependencies
>   package/flutter-gallery: add a configure step
>   package/flutter-gallery: fix build options
>   package/flutter-gallery: clean up install_target_cmds
> 
>  package/depot-tools/depot-tools.hash          |  2 +-
>  package/depot-tools/depot-tools.mk            |  2 +-
>  package/flutter-engine/Config.in              | 10 +++---
>  package/flutter-engine/flutter-engine.mk      |  2 +-
>  package/flutter-gallery/flutter-gallery.mk    | 24 ++++++++++----
>  package/flutter-pi/Config.in                  | 31 +++++++++++++++++--
>  package/flutter-pi/flutter-pi.hash            |  2 +-
>  package/flutter-pi/flutter-pi.mk              |  2 +-
>  package/flutter-sdk-bin/flutter-sdk-bin.hash  |  2 +-
>  package/flutter-sdk-bin/flutter-sdk-bin.mk    |  2 +-
>  ...rs-to-the-audio-players-and-keyboar.patch} | 26 ++++++++++++++--
>  11 files changed, 81 insertions(+), 24 deletions(-)
>  rename package/ivi-homescreen/{0001-add-missing-headers-to-the-audio-players-plugin.patch => 0001-add-missing-headers-to-the-audio-players-and-keyboar.patch} (77%)
> 
> -- 
> 2.43.0
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  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

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Buildroot] [PATCH v3 02/10] package/depot-tools: bump version to 8d14454ba4a35fd9d2483842b08815a2357ec86f
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 02/10] package/depot-tools: bump version to 8d14454ba4a35fd9d2483842b08815a2357ec86f Adam Duskett
@ 2024-01-20 21:45   ` Yann E. MORIN
  2024-02-03 11:27     ` Peter Korsgaard
  0 siblings, 1 reply; 21+ messages in thread
From: Yann E. MORIN @ 2024-01-20 21:45 UTC (permalink / raw)
  To: Adam Duskett; +Cc: buildroot

Adam, All,

On 2024-01-17 15:50 -0700, Adam Duskett spake thusly:

The comments you provided in the cover letter really belonged to this
commmit log, so I copied that as-is (apart for line-wrapping).

> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>

Applied to master, thanks.

Regards,
Yann E. MORIN.

> ---
>  package/depot-tools/depot-tools.hash | 2 +-
>  package/depot-tools/depot-tools.mk   | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/package/depot-tools/depot-tools.hash b/package/depot-tools/depot-tools.hash
> index 2109096901..70218e4658 100644
> --- a/package/depot-tools/depot-tools.hash
> +++ b/package/depot-tools/depot-tools.hash
> @@ -1,3 +1,3 @@
>  # Locally calculated
> -sha256  8e0bccdd6b1231f58d5453dc14a5e1d195295ac8d466dec34961e951e946b50b  depot-tools-4e87f5bfe244e903f712408ea68dc3c3a6fe2d00-br1.tar.gz
> +sha256  5da23d7558975093c6a732f5743c7f224d16dd3f878a6a1b577b1b127a4098cc  depot-tools-8d14454ba4a35fd9d2483842b08815a2357ec86f-br1.tar.gz
>  sha256  984523ee987f4e8b72d61df37d8f1189a7077cd4b77e41a397e35593b297a29d  LICENSE
> diff --git a/package/depot-tools/depot-tools.mk b/package/depot-tools/depot-tools.mk
> index e3b840f29a..634258ffbb 100644
> --- a/package/depot-tools/depot-tools.mk
> +++ b/package/depot-tools/depot-tools.mk
> @@ -4,7 +4,7 @@
>  #
>  ################################################################################
>  
> -DEPOT_TOOLS_VERSION = 4e87f5bfe244e903f712408ea68dc3c3a6fe2d00
> +DEPOT_TOOLS_VERSION = 8d14454ba4a35fd9d2483842b08815a2357ec86f
>  DEPOT_TOOLS_SITE = https://chromium.googlesource.com/chromium/tools/depot_tools
>  DEPOT_TOOLS_SITE_METHOD = git
>  DEPOT_TOOLS_LICENSE = BSD-3-Clause
> -- 
> 2.43.0
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  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

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Buildroot] [PATCH v3 08/10] package/flutter-gallery: add a configure step
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 08/10] package/flutter-gallery: add a configure step Adam Duskett
@ 2024-01-20 21:46   ` Yann E. MORIN
  2024-02-03 12:09     ` Peter Korsgaard
  0 siblings, 1 reply; 21+ messages in thread
From: Yann E. MORIN @ 2024-01-20 21:46 UTC (permalink / raw)
  To: Adam Duskett; +Cc: buildroot

Adam, All,

On 2024-01-17 15:50 -0700, Adam Duskett spake thusly:
> To make the next patch easier to understand, add a configure step to the
> flutter-gallery.mk file. The `$(HOST_FLUTTER_SDK_BIN_FLUTTER) build bundle`
> command is placed in the configure step because it generates several files
> needed for the flutter_gen_snapshot tool to generate the target .so file.
> 
> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
> ---
>  package/flutter-gallery/flutter-gallery.mk | 11 ++++++++---
>  1 file changed, 8 insertions(+), 3 deletions(-)
> 
> diff --git a/package/flutter-gallery/flutter-gallery.mk b/package/flutter-gallery/flutter-gallery.mk
> index 57a476b1ab..50ddd9ffba 100644
> --- a/package/flutter-gallery/flutter-gallery.mk
> +++ b/package/flutter-gallery/flutter-gallery.mk
> @@ -14,12 +14,17 @@ FLUTTER_GALLERY_DEPENDENCIES = \
>  
>  FLUTTER_GALLERY_INSTALL_DIR = $(TARGET_DIR)/usr/share/flutter/gallery/$(FLUTTER_ENGINE_RUNTIME_MODE)
>  
> -define FLUTTER_GALLERY_BUILD_CMDS
> +define FLUTTER_GALLERY_CONFIGURE_CMDS
>  	cd $(@D) && \
>  		FLUTTER_RUNTIME_MODES=$(FLUTTER_ENGINE_RUNTIME_MODE) \
>  		$(HOST_FLUTTER_SDK_BIN_FLUTTER) clean && \
> -		$(HOST_FLUTTER_SDK_BIN_FLUTTER) packages get && \
> +		$(HOST_FLUTTER_SDK_BIN_FLUTTER) pub get && \

As disucssed on IRC< that belonged to a spearate patch, so I split this
patch int two, and applied to master, thanks.

Regards,
Yann E. MORIN.

> -		$(HOST_FLUTTER_SDK_BIN_FLUTTER) build bundle && \
> +		$(HOST_FLUTTER_SDK_BIN_FLUTTER) build bundle
> +endef
> +
> +define FLUTTER_GALLERY_BUILD_CMDS
> +	cd $(@D) && \
> +		FLUTTER_RUNTIME_MODES=$(FLUTTER_ENGINE_RUNTIME_MODE) \
>  		$(HOST_FLUTTER_SDK_BIN_DART_BIN) package:gallery/main.dart && \
>  		$(HOST_FLUTTER_SDK_BIN_ENV) $(FLUTTER_ENGINE_GEN_SNAPSHOT) \
>  			--deterministic \
> -- 
> 2.43.0
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  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

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Buildroot] [PATCH v3 09/10] package/flutter-gallery: fix build options
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 09/10] package/flutter-gallery: fix build options Adam Duskett
@ 2024-01-20 21:56   ` Yann E. MORIN
  2024-02-03 12:09     ` Peter Korsgaard
  0 siblings, 1 reply; 21+ messages in thread
From: Yann E. MORIN @ 2024-01-20 21:56 UTC (permalink / raw)
  To: Adam Duskett; +Cc: buildroot

ADam, All,

On 2024-01-17 15:50 -0700, Adam Duskett spake thusly:
> As the flutter-gallery package is a reference package for users wishing to use
> Flutter for their UX with Buildroot, this package must have the correct build
> options. Indeed, this package currently starts and runs, but only because of
> the 0001-remove-GetStorage.patch. Through testing, flutter-gallery fails to
> run during the following scenario:
>   - The xdg-user-dirs package is ported and present.
>   - flutter-gallery depends on xdg-user-dirs.
>   - The 0001-remove-GetStorage.patch file is removed.
> 
> After extensive testing and comparing the current build arguments against what
> the meta-flutter repository for Yocto passes to all of the applications that
> inherit flutter-app, it is clear that handling the dart_plugin_registrant.dart
> file is missing from the dart arguments in the flutter-gallery build step.
[--SNIP--]

Great commit log! This is exactly the kind of commit log that gives
confidence in the patch, as it demonstrates that the topic has been
researched, and the solution is explained, and the drawbacks identified
and justified.

I did not understand all the details of it, but the commit log really
helped me just apply the commit wihtout too much thought.

Thank you! 👍

> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
> ---
>  package/flutter-gallery/flutter-gallery.mk | 9 +++++++--
>  1 file changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/package/flutter-gallery/flutter-gallery.mk b/package/flutter-gallery/flutter-gallery.mk
> index 50ddd9ffba..e23dc399da 100644
> --- a/package/flutter-gallery/flutter-gallery.mk
> +++ b/package/flutter-gallery/flutter-gallery.mk
> @@ -24,10 +24,15 @@ endef
>  
>  define FLUTTER_GALLERY_BUILD_CMDS
>  	cd $(@D) && \
> -		FLUTTER_RUNTIME_MODES=$(FLUTTER_ENGINE_RUNTIME_MODE) \

As we discusd on IRC, dropping FLUTTER_RUNTIME_MODES is unrelated to
this change, and although FLUTTER_RUNTIME_MODES is totally useless here,
dropping it should be part of another cleanup.

Applied to master with FLUTTER_RUNTIME_MODES restored, thanks.

Regards,
Yann E. MORIN.

> -		$(HOST_FLUTTER_SDK_BIN_DART_BIN) package:gallery/main.dart && \
> +		$(HOST_FLUTTER_SDK_BIN_DART_BIN) \
> +			-Dflutter.dart_plugin_registrant=file://$(@D)/.dart_tool/flutter_build/dart_plugin_registrant.dart \
> +			--source file://$(@D)/.dart_tool/flutter_build/dart_plugin_registrant.dart \
> +			--source package:flutter/src/dart_plugin_registrant.dart \
> +			--native-assets $(@D)/.dart_tool/flutter_build/*/native_assets.yaml \
> +			package:gallery/main.dart && \
>  		$(HOST_FLUTTER_SDK_BIN_ENV) $(FLUTTER_ENGINE_GEN_SNAPSHOT) \
>  			--deterministic \
> +			--obfuscate \
>  			--snapshot_kind=app-aot-elf \
>  			--elf=libapp.so \
>  			.dart_tool/flutter_build/*/app.dill
> -- 
> 2.43.0
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  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

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Buildroot] [PATCH v3 10/10] package/flutter-gallery: clean up install_target_cmds
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 10/10] package/flutter-gallery: clean up install_target_cmds Adam Duskett
@ 2024-01-20 21:59   ` Yann E. MORIN
  2024-02-03 12:09     ` Peter Korsgaard
  0 siblings, 1 reply; 21+ messages in thread
From: Yann E. MORIN @ 2024-01-20 21:59 UTC (permalink / raw)
  To: Adam Duskett; +Cc: buildroot

Adam, All,

On 2024-01-17 15:50 -0700, Adam Duskett spake thusly:
> Remove and create the kernel_blob.bin file in the flutter_assets directory:
> 
>   When Flutter compiles the source code, it creates the kernel_blob.bin file,
>   a Dart Kernel Bytecode of the application.
> 
>   If kernel_blob.bin exists inside the flutter_assets directory, then the
>   application source code can be extracted with nothing more than apktool.
>   Not only is this a security risk, it's also redundant and a waste of space.
> 
>   Removing the kernel_blob.bin file generated for flutter-gallery saves 86M!
>   Because this package is a reference package, and some applications may check
>   if the kernel_blob.bin file exists, we also touch a blank kernel_blob.bin
>   file.
> 
> Do not use relative symlinks:
>   Users may not install their applications in the
>   /usr/share/flutter/${package_name} directory. Because this is a reference
>   application, using exact symlinks to icudtl.dat and libflutter_engine.so
>   is preferable.

It was not directly obvious to me what this section meant, so I reworded
it, and introduced a bad typo... At least I could only spot one...
Sorry... :-(

> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>

Applied to master, thanks.

Regards,
Yann E. MORIN.

> ---
>  package/flutter-gallery/flutter-gallery.mk | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/package/flutter-gallery/flutter-gallery.mk b/package/flutter-gallery/flutter-gallery.mk
> index e23dc399da..6b0954cb32 100644
> --- a/package/flutter-gallery/flutter-gallery.mk
> +++ b/package/flutter-gallery/flutter-gallery.mk
> @@ -45,10 +45,12 @@ define FLUTTER_GALLERY_INSTALL_TARGET_CMDS
>  	$(INSTALL) -D -m 0755 $(@D)/libapp.so \
>  		$(FLUTTER_GALLERY_INSTALL_DIR)/lib/libapp.so
>  
> -	ln -sf ../../../$(FLUTTER_ENGINE_RUNTIME_MODE)/data/icudtl.dat \
> +	ln -sf /usr/share/flutter/$(FLUTTER_ENGINE_RUNTIME_MODE)/data/icudtl.dat \
>  	$(FLUTTER_GALLERY_INSTALL_DIR)/data/
>  
> -	ln -sf ../../../../../lib/libflutter_engine.so $(FLUTTER_GALLERY_INSTALL_DIR)/lib/
> +	ln -sf /usr/lib/libflutter_engine.so $(FLUTTER_GALLERY_INSTALL_DIR)/lib/
> +	$(RM) $(FLUTTER_GALLERY_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
> +	touch $(FLUTTER_GALLERY_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
>  endef
>  
>  $(eval $(generic-package))
> -- 
> 2.43.0
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  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

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Buildroot] [PATCH v3 07/10] package/flutter-pi/Config.in: propagate flutter-engine dependencies
  2024-01-17 22:50 ` [Buildroot] [PATCH v3 07/10] package/flutter-pi/Config.in: propagate flutter-engine dependencies Adam Duskett
@ 2024-01-20 22:56   ` Yann E. MORIN
  0 siblings, 0 replies; 21+ messages in thread
From: Yann E. MORIN @ 2024-01-20 22:56 UTC (permalink / raw)
  To: Adam Duskett; +Cc: buildroot

Adam, All,

On 2024-01-17 15:50 -0700, Adam Duskett spake thusly:
> As discussed with Yann, it is better to make the dependencies of
> flutter-pi verbose, even if flutter-engine and host-flutter-sdk-bin have
> eleven dependencies combined. This change clears up any ambiguity a user may
> have regarding the dependencies the flutter-pi package relies upon and why.

This patch does not really do what the commit log states. Indeed, there
is no need to "propagate flutter-engine dependencies", as the package
"depends on" flutter-engine.

What the package does, really, is invert the semantics of the dependency
to flutter-engine.

Indeed, the reasoning is that flutter-engine, by name, is an engine,
i.e. a runtime that executes applications. As such, it is more logical
that applications select flutter-engine, rather than depend on it, hence
the inversion of the dependency logic in this patch.

It also makes flutter-pi, an embedder, behave the same as
ivi-homescreen, another embedder.

So, I've eventually applied to master, with a reworded commit log,
thanks.

Regards,
Yann E. MORIN.

> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
> ---
>  package/flutter-pi/Config.in | 31 ++++++++++++++++++++++++++++---
>  1 file changed, 28 insertions(+), 3 deletions(-)
> 
> diff --git a/package/flutter-pi/Config.in b/package/flutter-pi/Config.in
> index 4bbdc3cc77..bb0e3702c1 100644
> --- a/package/flutter-pi/Config.in
> +++ b/package/flutter-pi/Config.in
> @@ -1,9 +1,20 @@
>  menuconfig BR2_PACKAGE_FLUTTER_PI
>  	bool "flutter-pi"
> -	depends on BR2_PACKAGE_FLUTTER_ENGINE
> +	depends on BR2_PACKAGE_HOST_FLUTTER_SDK_BIN_ARCH_SUPPORTS
> +	depends on BR2_PACKAGE_FLUTTER_ENGINE_ARCH_SUPPORTS
> +	depends on BR2_HOST_GCC_AT_LEAST_5 # flutter-engine
> +	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 # flutter-engine
> +	depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # flutter-engine
> +	depends on BR2_TOOLCHAIN_USES_GLIBC # flutter-engine
> +	depends on BR2_INSTALL_LIBSTDCPP # flutter-engine
> +	depends on !BR2_STATIC_LIBS # flutter-engine, wayland
> +	depends on BR2_USE_WCHAR # flutter-engine
> +	depends on BR2_PACKAGE_HAS_LIBGL || BR2_PACKAGE_HAS_LIBGLES # flutter-engine
>  	depends on BR2_PACKAGE_HAS_LIBGBM
>  	depends on BR2_PACKAGE_SYSTEMD # Event loop and dbus support
>  	depends on BR2_PACKAGE_HAS_UDEV # libinput
> +	select BR2_PACKAGE_HOST_FLUTTER_SDK_BIN
> +	select BR2_PACKAGE_FLUTTER_ENGINE
>  	select BR2_PACKAGE_LIBDRM
>  	select BR2_PACKAGE_LIBINPUT
>  	select BR2_PACKAGE_LIBXKBCOMMON
> @@ -80,8 +91,22 @@ config BR2_PACKAGE_FLUTTER_PI_TEXT_INPUT_PLUGIN
>  
>  endif
>  
> -comment "flutter-pi needs flutter-engine"
> -	depends on !BR2_PACKAGE_FLUTTER_ENGINE
> +comment "flutter-pi needs a glibc toolchain w/ wchar, C++, gcc >= 5, dynamic library, host gcc >= 5"
> +	depends on BR2_PACKAGE_HOST_FLUTTER_SDK_BIN_ARCH_SUPPORTS
> +	depends on BR2_PACKAGE_FLUTTER_ENGINE_ARCH_SUPPORTS
> +	depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_INSTALL_LIBSTDCPP \
> +		|| !BR2_TOOLCHAIN_GCC_AT_LEAST_5 || BR2_STATIC_LIBS \
> +		|| !BR2_USE_WCHAR || !BR2_HOST_GCC_AT_LEAST_5
> +
> +comment "flutter-pi needs a toolchain not affected by GCC bug 64735"
> +	depends on BR2_PACKAGE_HOST_FLUTTER_SDK_BIN_ARCH_SUPPORTS
> +	depends on BR2_PACKAGE_FLUTTER_ENGINE_ARCH_SUPPORTS
> +	depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
> +
> +comment "flutter-pi needs an OpenGL or OpenGLES backend"
> +	depends on BR2_PACKAGE_HOST_FLUTTER_SDK_BIN_ARCH_SUPPORTS
> +	depends on BR2_PACKAGE_FLUTTER_ENGINE_ARCH_SUPPORTS
> +	depends on !BR2_PACKAGE_HAS_LIBGL && !BR2_PACKAGE_HAS_LIBGLES
>  
>  comment "flutter-pi needs GBM, systemd, and udev"
>  	depends on !BR2_PACKAGE_HAS_LIBGBM || \
> -- 
> 2.43.0
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  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

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Buildroot] [PATCH v3 02/10] package/depot-tools: bump version to 8d14454ba4a35fd9d2483842b08815a2357ec86f
  2024-01-20 21:45   ` Yann E. MORIN
@ 2024-02-03 11:27     ` Peter Korsgaard
  0 siblings, 0 replies; 21+ messages in thread
From: Peter Korsgaard @ 2024-02-03 11:27 UTC (permalink / raw)
  To: Yann E. MORIN; +Cc: Adam Duskett, buildroot

>>>>> "Yann" == Yann E MORIN <yann.morin.1998@free.fr> writes:

 > Adam, All,
 > On 2024-01-17 15:50 -0700, Adam Duskett spake thusly:

 > The comments you provided in the cover letter really belonged to this
 > commmit log, so I copied that as-is (apart for line-wrapping).

 >> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>

 > Applied to master, thanks.

Committed to 2023.11.x, thanks.

-- 
Bye, Peter Korsgaard
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Buildroot] [PATCH v3 08/10] package/flutter-gallery: add a configure step
  2024-01-20 21:46   ` Yann E. MORIN
@ 2024-02-03 12:09     ` Peter Korsgaard
  0 siblings, 0 replies; 21+ messages in thread
From: Peter Korsgaard @ 2024-02-03 12:09 UTC (permalink / raw)
  To: Yann E. MORIN; +Cc: Adam Duskett, buildroot

>>>>> "Yann" == Yann E MORIN <yann.morin.1998@free.fr> writes:

 > Adam, All,
 > On 2024-01-17 15:50 -0700, Adam Duskett spake thusly:
 >> To make the next patch easier to understand, add a configure step to the
 >> flutter-gallery.mk file. The `$(HOST_FLUTTER_SDK_BIN_FLUTTER) build bundle`
 >> command is placed in the configure step because it generates several files
 >> needed for the flutter_gen_snapshot tool to generate the target .so file.
 >> 
 >> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
 >> ---
 >> package/flutter-gallery/flutter-gallery.mk | 11 ++++++++---
 >> 1 file changed, 8 insertions(+), 3 deletions(-)
 >> 
 >> diff --git a/package/flutter-gallery/flutter-gallery.mk b/package/flutter-gallery/flutter-gallery.mk
 >> index 57a476b1ab..50ddd9ffba 100644
 >> --- a/package/flutter-gallery/flutter-gallery.mk
 >> +++ b/package/flutter-gallery/flutter-gallery.mk
 >> @@ -14,12 +14,17 @@ FLUTTER_GALLERY_DEPENDENCIES = \
 >> 
 >> FLUTTER_GALLERY_INSTALL_DIR = $(TARGET_DIR)/usr/share/flutter/gallery/$(FLUTTER_ENGINE_RUNTIME_MODE)
 >> 
 >> -define FLUTTER_GALLERY_BUILD_CMDS
 >> +define FLUTTER_GALLERY_CONFIGURE_CMDS
 >> cd $(@D) && \
 >> FLUTTER_RUNTIME_MODES=$(FLUTTER_ENGINE_RUNTIME_MODE) \
 >> $(HOST_FLUTTER_SDK_BIN_FLUTTER) clean && \
 >> -		$(HOST_FLUTTER_SDK_BIN_FLUTTER) packages get && \
 >> +		$(HOST_FLUTTER_SDK_BIN_FLUTTER) pub get && \

 > As disucssed on IRC< that belonged to a spearate patch, so I split this
 > patch int two, and applied to master, thanks.

Committed to 2023.11.x, thanks.

-- 
Bye, Peter Korsgaard
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Buildroot] [PATCH v3 09/10] package/flutter-gallery: fix build options
  2024-01-20 21:56   ` Yann E. MORIN
@ 2024-02-03 12:09     ` Peter Korsgaard
  0 siblings, 0 replies; 21+ messages in thread
From: Peter Korsgaard @ 2024-02-03 12:09 UTC (permalink / raw)
  To: Yann E. MORIN; +Cc: Adam Duskett, buildroot

>>>>> "Yann" == Yann E MORIN <yann.morin.1998@free.fr> writes:

 > ADam, All,
 > On 2024-01-17 15:50 -0700, Adam Duskett spake thusly:
 >> As the flutter-gallery package is a reference package for users wishing to use
 >> Flutter for their UX with Buildroot, this package must have the correct build
 >> options. Indeed, this package currently starts and runs, but only because of
 >> the 0001-remove-GetStorage.patch. Through testing, flutter-gallery fails to
 >> run during the following scenario:
 >> - The xdg-user-dirs package is ported and present.
 >> - flutter-gallery depends on xdg-user-dirs.
 >> - The 0001-remove-GetStorage.patch file is removed.
 >> 
 >> After extensive testing and comparing the current build arguments against what
 >> the meta-flutter repository for Yocto passes to all of the applications that
 >> inherit flutter-app, it is clear that handling the dart_plugin_registrant.dart
 >> file is missing from the dart arguments in the flutter-gallery build step.
 > [--SNIP--]

 > Great commit log! This is exactly the kind of commit log that gives
 > confidence in the patch, as it demonstrates that the topic has been
 > researched, and the solution is explained, and the drawbacks identified
 > and justified.

 > I did not understand all the details of it, but the commit log really
 > helped me just apply the commit wihtout too much thought.

 > Thank you! 👍

Committed to 2023.11.x, thanks.

-- 
Bye, Peter Korsgaard
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Buildroot] [PATCH v3 10/10] package/flutter-gallery: clean up install_target_cmds
  2024-01-20 21:59   ` Yann E. MORIN
@ 2024-02-03 12:09     ` Peter Korsgaard
  0 siblings, 0 replies; 21+ messages in thread
From: Peter Korsgaard @ 2024-02-03 12:09 UTC (permalink / raw)
  To: Yann E. MORIN; +Cc: Adam Duskett, buildroot

>>>>> "Yann" == Yann E MORIN <yann.morin.1998@free.fr> writes:

 > Adam, All,
 > On 2024-01-17 15:50 -0700, Adam Duskett spake thusly:
 >> Remove and create the kernel_blob.bin file in the flutter_assets directory:
 >> 
 >> When Flutter compiles the source code, it creates the kernel_blob.bin file,
 >> a Dart Kernel Bytecode of the application.
 >> 
 >> If kernel_blob.bin exists inside the flutter_assets directory, then the
 >> application source code can be extracted with nothing more than apktool.
 >> Not only is this a security risk, it's also redundant and a waste of space.
 >> 
 >> Removing the kernel_blob.bin file generated for flutter-gallery saves 86M!
 >> Because this package is a reference package, and some applications may check
 >> if the kernel_blob.bin file exists, we also touch a blank kernel_blob.bin
 >> file.
 >> 
 >> Do not use relative symlinks:
 >> Users may not install their applications in the
 >> /usr/share/flutter/${package_name} directory. Because this is a reference
 >> application, using exact symlinks to icudtl.dat and libflutter_engine.so
 >> is preferable.

 > It was not directly obvious to me what this section meant, so I reworded
 > it, and introduced a bad typo... At least I could only spot one...
 > Sorry... :-(

Committed to 2023.11.x, thanks.

-- 
Bye, Peter Korsgaard
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2024-02-03 18:14 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-01-17 22:50 [Buildroot] [PATCH v3 00/10] more flutter package improvements Adam Duskett
2024-01-17 22:50 ` [Buildroot] [PATCH v3 01/10] package/ivi-homescreen: add standard_method_codec.h to keyboard manager plugin Adam Duskett
2024-01-17 22:50 ` [Buildroot] [PATCH v3 02/10] package/depot-tools: bump version to 8d14454ba4a35fd9d2483842b08815a2357ec86f Adam Duskett
2024-01-20 21:45   ` Yann E. MORIN
2024-02-03 11:27     ` Peter Korsgaard
2024-01-17 22:50 ` [Buildroot] [PATCH v3 03/10] package/flutter-engine/Config.in: Drop nptl dependency Adam Duskett
2024-01-17 22:50 ` [Buildroot] [PATCH v3 04/10] package/flutter-sdk-bin: bump version to 3.16.8 Adam Duskett
2024-01-17 22:50 ` [Buildroot] [PATCH v3 05/10] package/flutter-engine: " Adam Duskett
2024-01-17 22:50 ` [Buildroot] [PATCH v3 06/10] package/flutter-pi: bump version to 75e72fef8e8ce65ec72a002c00d9c6db4d1479d3 Adam Duskett
2024-01-17 22:50 ` [Buildroot] [PATCH v3 07/10] package/flutter-pi/Config.in: propagate flutter-engine dependencies Adam Duskett
2024-01-20 22:56   ` Yann E. MORIN
2024-01-17 22:50 ` [Buildroot] [PATCH v3 08/10] package/flutter-gallery: add a configure step Adam Duskett
2024-01-20 21:46   ` Yann E. MORIN
2024-02-03 12:09     ` Peter Korsgaard
2024-01-17 22:50 ` [Buildroot] [PATCH v3 09/10] package/flutter-gallery: fix build options Adam Duskett
2024-01-20 21:56   ` Yann E. MORIN
2024-02-03 12:09     ` Peter Korsgaard
2024-01-17 22:50 ` [Buildroot] [PATCH v3 10/10] package/flutter-gallery: clean up install_target_cmds Adam Duskett
2024-01-20 21:59   ` Yann E. MORIN
2024-02-03 12:09     ` Peter Korsgaard
2024-01-20 21:43 ` [Buildroot] [PATCH v3 00/10] more flutter package improvements Yann E. MORIN

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox