All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v2 01/13] package/Config.in: move flutter-pi
@ 2023-12-18 18:54 Adam Duskett
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 02/13] package/Config.in: move flutter-gallery Adam Duskett
                   ` (11 more replies)
  0 siblings, 12 replies; 13+ messages in thread
From: Adam Duskett @ 2023-12-18 18:54 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

This is a graphic application not a graphic library

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

diff --git a/package/Config.in b/package/Config.in
index fcc09b07c4..bfa73b848c 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -313,6 +313,7 @@ menu "Graphic libraries and applications (graphic/text)"
 comment "Graphic applications"
 	source "package/cage/Config.in"
 	source "package/cog/Config.in"
+	source "package/flutter-pi/Config.in"
 	source "package/fswebcam/Config.in"
 	source "package/ghostscript/Config.in"
 	source "package/glmark2/Config.in"
@@ -346,7 +347,6 @@ comment "Graphic libraries"
 	source "package/fbterm/Config.in"
 	source "package/fbv/Config.in"
 	source "package/flutter-gallery/Config.in"
-	source "package/flutter-pi/Config.in"
 	source "package/freerdp/Config.in"
 	source "package/graphicsmagick/Config.in"
 	source "package/imagemagick/Config.in"
-- 
2.43.0

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

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

* [Buildroot] [PATCH v2 02/13] package/Config.in: move flutter-gallery
  2023-12-18 18:54 [Buildroot] [PATCH v2 01/13] package/Config.in: move flutter-pi Adam Duskett
@ 2023-12-18 18:54 ` Adam Duskett
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 03/13] package/flutter-sdk-bin: bump version to 3.16.4 Adam Duskett
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Adam Duskett @ 2023-12-18 18:54 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

This is a graphic application not a graphic library

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

diff --git a/package/Config.in b/package/Config.in
index bfa73b848c..09e8700ea6 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -313,6 +313,7 @@ menu "Graphic libraries and applications (graphic/text)"
 comment "Graphic applications"
 	source "package/cage/Config.in"
 	source "package/cog/Config.in"
+	source "package/flutter-gallery/Config.in"
 	source "package/flutter-pi/Config.in"
 	source "package/fswebcam/Config.in"
 	source "package/ghostscript/Config.in"
@@ -346,7 +347,6 @@ comment "Graphic libraries"
 	source "package/fbset/Config.in"
 	source "package/fbterm/Config.in"
 	source "package/fbv/Config.in"
-	source "package/flutter-gallery/Config.in"
 	source "package/freerdp/Config.in"
 	source "package/graphicsmagick/Config.in"
 	source "package/imagemagick/Config.in"
-- 
2.43.0

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

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

* [Buildroot] [PATCH v2 03/13] package/flutter-sdk-bin: bump version to 3.16.4
  2023-12-18 18:54 [Buildroot] [PATCH v2 01/13] package/Config.in: move flutter-pi Adam Duskett
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 02/13] package/Config.in: move flutter-gallery Adam Duskett
@ 2023-12-18 18:54 ` Adam Duskett
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 04/13] package/flutter-engine: " Adam Duskett
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Adam Duskett @ 2023-12-18 18:54 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

--no-analytics and --disable-telemetry have been combined into
--disable-analytics

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
v1 -> v2: Bump to 3.16.4

 package/flutter-sdk-bin/flutter-sdk-bin.hash | 2 +-
 package/flutter-sdk-bin/flutter-sdk-bin.mk   | 5 ++---
 2 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/package/flutter-sdk-bin/flutter-sdk-bin.hash b/package/flutter-sdk-bin/flutter-sdk-bin.hash
index a204de1807..f4d4bacb84 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  b6bc6f93423488c67110e0fe56523cd2260f3a4c379ed015cd1c7fab66362739  flutter_linux_3.13.9-stable.tar.xz
+sha256  eb4fb2bcedd3ca2bbfe7570217db611937884bbdd00dec601be9c2a74517cee2  flutter_linux_3.16.4-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 e8e71b6ab0..e1292c154c 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.13.9
+FLUTTER_SDK_BIN_VERSION = 3.16.4
 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
@@ -24,8 +24,7 @@ HOST_FLUTTER_SDK_BIN_ENV = \
 # The following config options must be ran one at a time.
 HOST_FLUTTER_SDK_BIN_CONF_OPTS = \
 	--clear-features \
-	--no-analytics \
-	--disable-telemetry \
+	--disable-analytics \
 	--enable-custom-devices \
 	--enable-linux-desktop \
 	--no-enable-android \
-- 
2.43.0

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

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

* [Buildroot] [PATCH v2 04/13] package/flutter-engine: bump version to 3.16.4
  2023-12-18 18:54 [Buildroot] [PATCH v2 01/13] package/Config.in: move flutter-pi Adam Duskett
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 02/13] package/Config.in: move flutter-gallery Adam Duskett
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 03/13] package/flutter-sdk-bin: bump version to 3.16.4 Adam Duskett
@ 2023-12-18 18:54 ` Adam Duskett
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 05/13] package/flutter-pi: bump version to f34d7bdbda713ba607b9625541ddfa314d9999a0 Adam Duskett
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Adam Duskett @ 2023-12-18 18:54 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
v1 -> v2: Bump to 3.16.4

 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 d31d435d79..345f6bf25e 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.13.9
+FLUTTER_ENGINE_VERSION = 3.16.4
 
 # 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] 13+ messages in thread

* [Buildroot] [PATCH v2 05/13] package/flutter-pi: bump version to f34d7bdbda713ba607b9625541ddfa314d9999a0
  2023-12-18 18:54 [Buildroot] [PATCH v2 01/13] package/Config.in: move flutter-pi Adam Duskett
                   ` (2 preceding siblings ...)
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 04/13] package/flutter-engine: " Adam Duskett
@ 2023-12-18 18:54 ` Adam Duskett
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 06/13] package/flutter-pi: add charset converter plugin option Adam Duskett
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Adam Duskett @ 2023-12-18 18:54 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

- Drop upstream 0001-src-egl_gbm_render_surface-properly-fallback-to-surf.patch
- Disable new charset converter plugin.

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
v1 -> v2: Add to series, bump to f34d7bdbda713ba607b9625541ddfa314d9999a0

 ...er_surface-properly-fallback-to-surf.patch | 59 -------------------
 package/flutter-pi/flutter-pi.hash            |  2 +-
 package/flutter-pi/flutter-pi.mk              |  3 +-
 3 files changed, 3 insertions(+), 61 deletions(-)
 delete mode 100644 package/flutter-pi/0001-src-egl_gbm_render_surface-properly-fallback-to-surf.patch

diff --git a/package/flutter-pi/0001-src-egl_gbm_render_surface-properly-fallback-to-surf.patch b/package/flutter-pi/0001-src-egl_gbm_render_surface-properly-fallback-to-surf.patch
deleted file mode 100644
index 7a1a49b3d4..0000000000
--- a/package/flutter-pi/0001-src-egl_gbm_render_surface-properly-fallback-to-surf.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From 856f9849763535d62ed01b538ba23905875c93f4 Mon Sep 17 00:00:00 2001
-From: "Yann E. MORIN" <yann.morin.1998@free.fr>
-Date: Tue, 26 Sep 2023 20:31:17 +0200
-Subject: [PATCH] src/egl_gbm_render_surface: properly fallback to surface with
- no modifier
-
-In 869fa7fcfbeb, we added a fallback to be able to create an EGL sruface
-when the driver do not support modifiers, like the llvmpipe software
-renderer (or like some proprietary drivers, like the MALI ones), as
-reported in #269 [0].
-
-However, in c6537673c9b6, there was a big overhaul of renderer
-infrastructure. That commit lost the with-modifiers code path and only
-kept the without-modifiers fallback one (i.e. it only kept the call to
-gbm_surface_create(), not to gbm_surface_create_with_modifiers()).
-
-Then in b0d09f5032a4, the with-modifier code path was re-instated, but
-in a way that made it exclusive with the without-modifiers one. That is,
-the without-modifiers code path was not a fallback to when the other
-failed.
-
-Re-instate the fallback mechanism as intiially implemented.
-
-[0] https://github.com/ardera/flutter-pi/issues/269
-
-Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
-Upstream: https://github.com/ardera/flutter-pi/pull/367
----
- src/egl_gbm_render_surface.c | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/src/egl_gbm_render_surface.c b/src/egl_gbm_render_surface.c
-index ce9e5e7..8a58667 100644
---- a/src/egl_gbm_render_surface.c
-+++ b/src/egl_gbm_render_surface.c
-@@ -146,6 +146,7 @@ static int egl_gbm_render_surface_init(
-     }
- #endif
- 
-+    gbm_surface = NULL;
-     if (allowed_modifiers != NULL) {
-         gbm_surface = gbm_surface_create_with_modifiers(
-             gbm_device,
-@@ -158,9 +159,10 @@ static int egl_gbm_render_surface_init(
-         if (gbm_surface == NULL) {
-             ok = errno;
-             LOG_ERROR("Couldn't create GBM surface for rendering. gbm_surface_create_with_modifiers: %s\n", strerror(ok));
--            return ok;
-+            LOG_ERROR("Will retry without modifiers\n");
-         }
--    } else {
-+    }
-+    if (gbm_surface == NULL) {
-         gbm_surface = gbm_surface_create(
-             gbm_device,
-             size.x,
--- 
-2.25.1
-
diff --git a/package/flutter-pi/flutter-pi.hash b/package/flutter-pi/flutter-pi.hash
index f7148963a4..6c5371d18a 100644
--- a/package/flutter-pi/flutter-pi.hash
+++ b/package/flutter-pi/flutter-pi.hash
@@ -1,3 +1,3 @@
 # Locally calculated
-sha256  e4af79c8f53c15913f52a83a221f099a2a750d023a0bc4560d0db6f15def79a2  flutter-pi-d62e84350d2869b3ec1dfb1af21bfe234c4b817f-br1.tar.gz
+sha256  cf10ca9e26beea036ccf218e6a900de5f1f2000e00c03e7a48898c2a0c99f591  flutter-pi-f34d7bdbda713ba607b9625541ddfa314d9999a0-br1.tar.gz
 sha256  b34df9d3e1b4e5d1ba70b1740ec74b69f1189b44efd0c96b898b074ef8db1c70  LICENSE
diff --git a/package/flutter-pi/flutter-pi.mk b/package/flutter-pi/flutter-pi.mk
index 27f140c177..4ec89bdfad 100644
--- a/package/flutter-pi/flutter-pi.mk
+++ b/package/flutter-pi/flutter-pi.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-FLUTTER_PI_VERSION = d62e84350d2869b3ec1dfb1af21bfe234c4b817f
+FLUTTER_PI_VERSION = f34d7bdbda713ba607b9625541ddfa314d9999a0
 FLUTTER_PI_SITE = https://github.com/ardera/flutter-pi.git
 FLUTTER_PI_SITE_METHOD = git
 FLUTTER_PI_LICENSE = MIT
@@ -27,6 +27,7 @@ FLUTTER_PI_CONF_OPTS = \
 	-DENABLE_VULKAN=OFF \
 	-DFILESYSTEM_LAYOUT=meta-flutter \
 	-DLINT_EGL_HEADERS=OFF \
+	-DBUILD_CHARSET_CONVERTER_PLUGIN=OFF \
 	-DTRY_BUILD_GSTREAMER_AUDIO_PLAYER_PLUGIN=OFF \
 	-DTRY_BUILD_GSTREAMER_VIDEO_PLAYER_PLUGIN=OFF \
 	-DTRY_ENABLE_OPENGL=OFF \
-- 
2.43.0

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

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

* [Buildroot] [PATCH v2 06/13] package/flutter-pi: add charset converter plugin option
  2023-12-18 18:54 [Buildroot] [PATCH v2 01/13] package/Config.in: move flutter-pi Adam Duskett
                   ` (3 preceding siblings ...)
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 05/13] package/flutter-pi: bump version to f34d7bdbda713ba607b9625541ddfa314d9999a0 Adam Duskett
@ 2023-12-18 18:54 ` Adam Duskett
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 07/13] package/flutter-engine: Add profile runtime mode selection Adam Duskett
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Adam Duskett @ 2023-12-18 18:54 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
v1 -> v2: add to series

 package/flutter-pi/Config.in     | 7 +++++++
 package/flutter-pi/flutter-pi.mk | 7 ++++++-
 2 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/package/flutter-pi/Config.in b/package/flutter-pi/Config.in
index ecebfad89b..45b6b4faef 100644
--- a/package/flutter-pi/Config.in
+++ b/package/flutter-pi/Config.in
@@ -23,6 +23,13 @@ if BR2_PACKAGE_FLUTTER_PI
 
 comment "plugins"
 
+config BR2_PACKAGE_FLUTTER_PI_CHARSET_CONVERTER_PLUGIN
+	bool "charset converter"
+	help
+	  Adds platform-side implementation of charset_converter plugin.
+
+	  See: https://pub.dev/packages/charset_converter
+
 config BR2_PACKAGE_FLUTTER_PI_GSTREAMER_AUDIO_PLAYER_PLUGIN
 	bool "gstreamer audio player"
 	depends on BR2_PACKAGE_HAS_LIBGLES
diff --git a/package/flutter-pi/flutter-pi.mk b/package/flutter-pi/flutter-pi.mk
index 4ec89bdfad..ab640d704a 100644
--- a/package/flutter-pi/flutter-pi.mk
+++ b/package/flutter-pi/flutter-pi.mk
@@ -27,7 +27,6 @@ FLUTTER_PI_CONF_OPTS = \
 	-DENABLE_VULKAN=OFF \
 	-DFILESYSTEM_LAYOUT=meta-flutter \
 	-DLINT_EGL_HEADERS=OFF \
-	-DBUILD_CHARSET_CONVERTER_PLUGIN=OFF \
 	-DTRY_BUILD_GSTREAMER_AUDIO_PLAYER_PLUGIN=OFF \
 	-DTRY_BUILD_GSTREAMER_VIDEO_PLAYER_PLUGIN=OFF \
 	-DTRY_ENABLE_OPENGL=OFF \
@@ -43,6 +42,12 @@ else
 FLUTTER_PI_CONF_OPTS += -DLTO=OFF
 endif
 
+ifeq ($(BR2_PACKAGE_FLUTTER_PI_CHARSET_CONVERTER_PLUGIN),y)
+FLUTTER_PI_CONF_OPTS += -DBUILD_CHARSET_CONVERTER_PLUGIN=ON
+else
+FLUTTER_PI_CONF_OPTS += -DBUILD_CHARSET_CONVERTER_PLUGIN=OFF
+endif
+
 ifeq ($(BR2_PACKAGE_FLUTTER_PI_GSTREAMER_AUDIO_PLAYER_PLUGIN),y)
 FLUTTER_PI_DEPENDENCIES += gstreamer1 gst1-plugins-base
 FLUTTER_PI_CONF_OPTS += -DBUILD_GSTREAMER_AUDIO_PLAYER_PLUGIN=ON
-- 
2.43.0

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

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

* [Buildroot] [PATCH v2 07/13] package/flutter-engine: Add profile runtime mode selection
  2023-12-18 18:54 [Buildroot] [PATCH v2 01/13] package/Config.in: move flutter-pi Adam Duskett
                   ` (4 preceding siblings ...)
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 06/13] package/flutter-pi: add charset converter plugin option Adam Duskett
@ 2023-12-18 18:54 ` Adam Duskett
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 08/13] package/flutter-sdk-bin: add dart arguments for different runtime modes Adam Duskett
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Adam Duskett @ 2023-12-18 18:54 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

There are only two possible modes for Flutter: Debug and release. However,
there is a third mode available to users: profile.

As Flutter projects can be pretty heavy and consume a lot of resources, it is
necessary to allow users to profile their Flutter application during
development.

Add a new choice: FLUTTER_ENGINE_RUNTIME_MODE_PROFILE. If unselected, the
global option BR2_ENABLE_RUNTIME_DEBUG determines whether to build Flutter
in release or debug mode.

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
 package/flutter-engine/Config.in         | 25 ++++++++++++++++++++++++
 package/flutter-engine/flutter-engine.mk |  4 +++-
 2 files changed, 28 insertions(+), 1 deletion(-)

diff --git a/package/flutter-engine/Config.in b/package/flutter-engine/Config.in
index 2ec5b90ffd..3c92e40f74 100644
--- a/package/flutter-engine/Config.in
+++ b/package/flutter-engine/Config.in
@@ -39,6 +39,31 @@ config BR2_PACKAGE_FLUTTER_ENGINE
 
 	  https://github.com/flutter/engine
 
+if BR2_PACKAGE_FLUTTER_ENGINE
+
+config FLUTTER_ENGINE_RUNTIME_MODE_PROFILE
+	bool "enable profiling"
+	help
+	  Some debugging ability is maintained—enough to profile your
+	  apps performance. Profile mode is disabled on the emulator
+	  and simulator, because their behavior is not representative
+	  of real performance. Profile mode is similar to release mode,
+	  with the following differences:
+
+	  - Some service extensions, such as the one that enables the
+	    performance overlay, are enabled.
+
+	  - Tracing is enabled, and tools supporting source-level
+	    debugging (such as DevTools) can connect to the process.
+
+	  If this option is left unselected, the global option
+	  BR2_ENABLE_RUNTIME_DEBUG determines whether to build Flutter
+	  in release or debug mode.
+
+	  https://docs.flutter.dev/testing/build-modes#profile
+
+endif
+
 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
diff --git a/package/flutter-engine/flutter-engine.mk b/package/flutter-engine/flutter-engine.mk
index 345f6bf25e..0b4fdfae09 100644
--- a/package/flutter-engine/flutter-engine.mk
+++ b/package/flutter-engine/flutter-engine.mk
@@ -52,7 +52,9 @@ FLUTTER_ENGINE_TARGET_ARCH = x64
 FLUTTER_ENGINE_TARGET_TRIPPLE = x86_64-unknown-linux-gnu
 endif
 
-ifeq ($(BR2_ENABLE_RUNTIME_DEBUG),y)
+ifeq ($(FLUTTER_ENGINE_RUNTIME_MODE_PROFILE),y)
+FLUTTER_ENGINE_RUNTIME_MODE=profile
+else ifeq ($(BR2_ENABLE_RUNTIME_DEBUG),y)
 FLUTTER_ENGINE_RUNTIME_MODE=debug
 else
 FLUTTER_ENGINE_RUNTIME_MODE=release
-- 
2.43.0

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

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

* [Buildroot] [PATCH v2 08/13] package/flutter-sdk-bin: add dart arguments for different runtime modes
  2023-12-18 18:54 [Buildroot] [PATCH v2 01/13] package/Config.in: move flutter-pi Adam Duskett
                   ` (5 preceding siblings ...)
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 07/13] package/flutter-engine: Add profile runtime mode selection Adam Duskett
@ 2023-12-18 18:54 ` Adam Duskett
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 09/13] package/flutter-gallery: add a configure step Adam Duskett
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Adam Duskett @ 2023-12-18 18:54 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

Now that we have a profile mode for flutter-engine, add debug, profile, and
release dart arguments when building a Flutter application.

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
 package/flutter-sdk-bin/flutter-sdk-bin.mk | 19 ++++++++++++++-----
 1 file changed, 14 insertions(+), 5 deletions(-)

diff --git a/package/flutter-sdk-bin/flutter-sdk-bin.mk b/package/flutter-sdk-bin/flutter-sdk-bin.mk
index e1292c154c..0c33d25089 100644
--- a/package/flutter-sdk-bin/flutter-sdk-bin.mk
+++ b/package/flutter-sdk-bin/flutter-sdk-bin.mk
@@ -54,13 +54,20 @@ define HOST_FLUTTER_SDK_BIN_INSTALL_CMDS
 endef
 
 ifeq ($(BR2_ENABLE_RUNTIME_DEBUG),y)
-HOST_FLUTTER_SDK_BIN_SDK_ROOT = \
-	$(HOST_FLUTTER_SDK_BIN_SDK_ENGINE)/common/flutter_patched_sdk
+HOST_FLUTTER_SDK_BIN_DEBUG_FLAGS = --enable-asserts
 HOST_FLUTTER_SDK_BIN_SDK_PRODUCT = false
+HOST_FLUTTER_SDK_BIN_SDK_ROOT = $(HOST_FLUTTER_SDK_BIN_SDK_ENGINE)/common/flutter_patched_sdk
+else ifeq ($(FLUTTER_ENGINE_RUNTIME_MODE_PROFILE),y)
+HOST_FLUTTER_SDK_BIN_PROFILE_FLAGS = --track-widget-creation
+HOST_FLUTTER_SDK_BIN_SDK_PRODUCT = false
+HOST_FLUTTER_SDK_BIN_SDK_ROOT = $(HOST_FLUTTER_SDK_BIN_SDK_ENGINE)/common/flutter_patched_sdk
+HOST_FLUTTER_SDK_BIN_SDK_VM_PROFILE = true
 else
-HOST_FLUTTER_SDK_BIN_SDK_ROOT = \
-	$(HOST_FLUTTER_SDK_BIN_SDK_ENGINE)/common/flutter_patched_sdk_product
+HOST_FLUTTER_SDK_BIN_DEBUG_FLAGS =
+HOST_FLUTTER_SDK_BIN_PROFILE_FLAGS =
 HOST_FLUTTER_SDK_BIN_SDK_PRODUCT = true
+HOST_FLUTTER_SDK_BIN_SDK_ROOT = $(HOST_FLUTTER_SDK_BIN_SDK_ENGINE)/common/flutter_patched_sdk_product
+HOST_FLUTTER_SDK_BIN_SDK_VM_PROFILE = false
 endif
 
 # The Order matters.Taken from:
@@ -72,8 +79,10 @@ HOST_FLUTTER_SDK_BIN_DART_ARGS = \
 	--sdk-root $(HOST_FLUTTER_SDK_BIN_SDK_ROOT) \
 	--target=flutter \
 	--no-print-incremental-dependencies \
-	-Ddart.vm.profile=false \
+	-Ddart.vm.profile=$(HOST_FLUTTER_SDK_BIN_SDK_VM_PROFILE) \
 	-Ddart.vm.product=$(HOST_FLUTTER_SDK_BIN_SDK_PRODUCT) \
+	$(HOST_FLUTTER_SDK_BIN_DEBUG_FLAGS) \
+	$(HOST_FLUTTER_SDK_BIN_PROFILE_FLAGS) \
 	--aot \
 	--tfa \
 	--target-os linux \
-- 
2.43.0

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

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

* [Buildroot] [PATCH v2 09/13] package/flutter-gallery: add a configure step
  2023-12-18 18:54 [Buildroot] [PATCH v2 01/13] package/Config.in: move flutter-pi Adam Duskett
                   ` (6 preceding siblings ...)
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 08/13] package/flutter-sdk-bin: add dart arguments for different runtime modes Adam Duskett
@ 2023-12-18 18:54 ` Adam Duskett
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 10/13] package/xdg-user-dirs: new package Adam Duskett
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Adam Duskett @ 2023-12-18 18:54 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

To clarify the next patch, add a configure step to flutter-gallery.mk.
The `$(HOST_FLUTTER_SDK_BIN_FLUTTER) build bundle` is 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] 13+ messages in thread

* [Buildroot] [PATCH v2 10/13] package/xdg-user-dirs: new package
  2023-12-18 18:54 [Buildroot] [PATCH v2 01/13] package/Config.in: move flutter-pi Adam Duskett
                   ` (7 preceding siblings ...)
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 09/13] package/flutter-gallery: add a configure step Adam Duskett
@ 2023-12-18 18:54 ` Adam Duskett
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 11/13] package/flutter-gallery: depend on xdg-user-dirs and fix build options Adam Duskett
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Adam Duskett @ 2023-12-18 18:54 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

This is needed to fix flutter-gallery

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
 DEVELOPERS                                    |  1 +
 package/Config.in                             |  1 +
 package/xdg-user-dirs/Config.in               | 14 +++++++
 package/xdg-user-dirs/S22xdg-user-dirs-update | 26 +++++++++++++
 .../xdg-user-dirs-update.service              | 10 +++++
 package/xdg-user-dirs/xdg-user-dirs.hash      |  3 ++
 package/xdg-user-dirs/xdg-user-dirs.mk        | 37 +++++++++++++++++++
 7 files changed, 92 insertions(+)
 create mode 100644 package/xdg-user-dirs/Config.in
 create mode 100644 package/xdg-user-dirs/S22xdg-user-dirs-update
 create mode 100644 package/xdg-user-dirs/xdg-user-dirs-update.service
 create mode 100644 package/xdg-user-dirs/xdg-user-dirs.hash
 create mode 100644 package/xdg-user-dirs/xdg-user-dirs.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 311dcd9504..3782d11b75 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -39,6 +39,7 @@ F:	package/flutter-pi/
 F:	package/flutter-sdk-bin/
 F:	package/python-kmod/
 F:	package/python-versioneer/
+F:	package/xdg-user-dirs/
 F:	support/testing/tests/package/test_firewalld.py
 F:	support/testing/tests/package/test_flutter.py
 
diff --git a/package/Config.in b/package/Config.in
index 09e8700ea6..a445ff64c1 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -2785,6 +2785,7 @@ menu "System tools"
 	source "package/watchdog/Config.in"
 	source "package/watchdogd/Config.in"
 	source "package/xdg-dbus-proxy/Config.in"
+	source "package/xdg-user-dirs/Config.in"
 	source "package/xen/Config.in"
 	source "package/xvisor/Config.in"
 endmenu
diff --git a/package/xdg-user-dirs/Config.in b/package/xdg-user-dirs/Config.in
new file mode 100644
index 0000000000..ba122606f2
--- /dev/null
+++ b/package/xdg-user-dirs/Config.in
@@ -0,0 +1,14 @@
+config BR2_PACKAGE_XDG_USER_DIRS
+	bool "xdg-user-dirs"
+	depends on BR2_ENABLE_LOCALE
+	depends on BR2_USE_WCHAR # libglib2 -> gettext
+	help
+	  xdg-user-dirs is a tool to help manage "well known" user
+	  directories like the desktop folder and the music folder.
+	  It also handles localization (i.e. translation) of the
+	  filenames.
+
+	  https://freedesktop.org/wiki/Software/xdg-user-dirs/
+
+comment "xdg-user-dirs needs a toolchain w/ wchar, locale"
+	depends on !BR2_USE_WCHAR || !BR2_ENABLE_LOCALE
diff --git a/package/xdg-user-dirs/S22xdg-user-dirs-update b/package/xdg-user-dirs/S22xdg-user-dirs-update
new file mode 100644
index 0000000000..ec8f2039b3
--- /dev/null
+++ b/package/xdg-user-dirs/S22xdg-user-dirs-update
@@ -0,0 +1,26 @@
+#!/bin/sh
+set -e
+
+DAEMON="xdg-user-dirs-update"
+XDG_USER_DIRS_UPDATE_ARGS="--force"
+
+start() {
+		printf "Starting %s: " "${DAEMON}"
+		su - root -c "${DAEMON} ${XDG_USER_DIRS_UPDATE_ARGS}"
+		status=$?
+		if [ "${status}" -eq 0 ]; then
+			echo "OK"
+		else
+			echo "FAIL"
+		fi
+		return "${status}"
+}
+
+case "$1" in
+	start)
+		"$1";;
+	*)
+		echo "Usage: xdg-user-dirs-update start"
+		exit 1
+		;;
+esac
diff --git a/package/xdg-user-dirs/xdg-user-dirs-update.service b/package/xdg-user-dirs/xdg-user-dirs-update.service
new file mode 100644
index 0000000000..438df4a8da
--- /dev/null
+++ b/package/xdg-user-dirs/xdg-user-dirs-update.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Update XDG user dir configuration
+
+[Service]
+Type=oneshot
+EnvironmentFile=-/etc/locale.conf
+ExecStart=/usr/bin/xdg-user-dirs-update --force
+
+[Install]
+WantedBy=default.target
diff --git a/package/xdg-user-dirs/xdg-user-dirs.hash b/package/xdg-user-dirs/xdg-user-dirs.hash
new file mode 100644
index 0000000000..a4d911ee7d
--- /dev/null
+++ b/package/xdg-user-dirs/xdg-user-dirs.hash
@@ -0,0 +1,3 @@
+# Locally calculated
+sha256  ec6f06d7495cdba37a732039f9b5e1578bcb296576fde0da40edb2f52220df3c  xdg-user-dirs-0.18.tar.gz
+sha256  32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670  COPYING
diff --git a/package/xdg-user-dirs/xdg-user-dirs.mk b/package/xdg-user-dirs/xdg-user-dirs.mk
new file mode 100644
index 0000000000..95b2e0c4fc
--- /dev/null
+++ b/package/xdg-user-dirs/xdg-user-dirs.mk
@@ -0,0 +1,37 @@
+################################################################################
+#
+# xdg-user-dirs
+#
+################################################################################
+
+XDG_USER_DIRS_VERSION = 0.18
+XDG_USER_DIRS_SITE = http://user-dirs.freedesktop.org/releases
+XDG_USER_DIRS_LICENSE = GPL-2.0
+XDG_USER_DIRS_LICENSE_FILES = COPYING
+XDG_USER_DIRS_CONF_OPTS = \
+	--disable-rpath \
+	--with-gnu-ld
+
+ifeq ($(BR2_PACKAGE_GETTEXT_PROVIDES_LIBINTL),y)
+XDG_USER_DIRS_CONF_OPTS += --with-libintl-prefix=$(STAGING_DIR)/usr
+else
+XDG_USER_DIRS_CONF_OPTS += --without-libintl-prefix
+endif
+
+# We do not need nor want  the desktop file.
+define XDG_USER_DIRS_REMOVE_DESKTOP_FILE
+	$(RM) -rf $(TARGET_DIR)/etc/xdg/autostart/
+endef
+XDG_USER_DIRS_POST_INSTALL_TARGET_HOOKS += XDG_USER_DIRS_REMOVE_DESKTOP_FILE
+
+define XDG_USER_DIRS_INSTALL_INIT_SYSTEMD
+	$(INSTALL) -D -m 0644 $(XDG_USER_DIRS_PKGDIR)/xdg-user-dirs-update.service \
+		$(TARGET_DIR)/usr/lib/systemd/system/xdg-user-dirs-update.service
+endef
+
+define XDG_USER_DIRS_INSTALL_INIT_SYSV
+	$(INSTALL) -D -m 0755 $(XDG_USER_DIRS_PKGDIR)/S22xdg-user-dirs-update \
+		$(TARGET_DIR)/etc/init.d/S22xdg-user-dirs-update
+endef
+
+$(eval $(autotools-package))
-- 
2.43.0

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

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

* [Buildroot] [PATCH v2 11/13] package/flutter-gallery: depend on xdg-user-dirs and fix build options
  2023-12-18 18:54 [Buildroot] [PATCH v2 01/13] package/Config.in: move flutter-pi Adam Duskett
                   ` (8 preceding siblings ...)
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 10/13] package/xdg-user-dirs: new package Adam Duskett
@ 2023-12-18 18:54 ` Adam Duskett
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 12/13] package/flutter-gallery: clean up install_target_cmds Adam Duskett
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 13/13] package/flutter-sdk-bin/Config.in.host: add pub-cache location option Adam Duskett
  11 siblings, 0 replies; 13+ messages in thread
From: Adam Duskett @ 2023-12-18 18:54 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

- Drop 0001-remove-GetStorage.patch

  - Select and depend on xdg-user-dirs for the GetStorage plugin.

  - Pass the following new options to dart to allow flutter-gallery to
    properly run:

    -Dflutter.dart_plugin_registrant informs dart the
    dart_plugin_registrant.dart file is for a flutter application.

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

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

  - pass --obfuscate to flutter_gen_snapshot to obfuscate the .so for
    security purposes.

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
 .../0001-remove-GetStorage.patch              | 84 -------------------
 package/flutter-gallery/Config.in             |  1 +
 package/flutter-gallery/flutter-gallery.mk    | 10 ++-
 3 files changed, 9 insertions(+), 86 deletions(-)
 delete mode 100644 package/flutter-gallery/0001-remove-GetStorage.patch

diff --git a/package/flutter-gallery/0001-remove-GetStorage.patch b/package/flutter-gallery/0001-remove-GetStorage.patch
deleted file mode 100644
index 142cf853da..0000000000
--- a/package/flutter-gallery/0001-remove-GetStorage.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-From a1d38d78163d84d3506c188e195cd5fa363f4be6 Mon Sep 17 00:00:00 2001
-From: Adam Duskett <adam.duskett@amarulasolutions.com>
-Date: Thu, 17 Aug 2023 13:00:07 -0600
-Subject: [PATCH] remove GetStorage
-
-Commit 287b20a8bfc71196cd733625e622b98b2f84bef1 introduced the get_storage
-plugin which breaks with the following error when the application is ran:
-
-Unhandled Exception: MissingPluginException(No implementation found for method
-getApplicataionDocumentsDirectory on channel plugins.flutter.io/path_provider)
-
-Revert the change.
-
-Upstream: https://github.com/flutter/gallery/issues/994
-Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
----
- lib/feature_discovery/feature_discovery.dart | 10 ----------
- lib/main.dart                                |  2 --
- pubspec.yaml                                 |  1 -
- 3 files changed, 13 deletions(-)
-
-diff --git a/lib/feature_discovery/feature_discovery.dart b/lib/feature_discovery/feature_discovery.dart
-index 288c78b..965d83c 100644
---- a/lib/feature_discovery/feature_discovery.dart
-+++ b/lib/feature_discovery/feature_discovery.dart
-@@ -6,7 +6,6 @@ import 'package:flutter/material.dart';
- import 'package:flutter/scheduler.dart';
- import 'package:gallery/feature_discovery/animation.dart';
- import 'package:gallery/feature_discovery/overlay.dart';
--import 'package:get_storage/get_storage.dart';
- 
- const _featureHighlightShownKey = 'feature_highlight_shown';
- 
-@@ -271,15 +270,6 @@ class _FeatureDiscoveryState extends State<FeatureDiscovery>
- 
-     initAnimationControllers();
-     initAnimations();
--
--    final localStorage = GetStorage();
--    final featureHiglightShown =
--        localStorage.read<bool>(_featureHighlightShownKey) ?? false;
--    localStorage.write(_featureHighlightShownKey, true);
--    showOverlay = widget.showOverlay && !featureHiglightShown;
--    if (showOverlay) {
--      localStorage.write(_featureHighlightShownKey, true);
--    }
-   }
- 
-   void initAnimationControllers() {
-diff --git a/lib/main.dart b/lib/main.dart
-index e9f4ff9..8c7a4e3 100644
---- a/lib/main.dart
-+++ b/lib/main.dart
-@@ -16,7 +16,6 @@ import 'package:gallery/pages/backdrop.dart';
- import 'package:gallery/pages/splash.dart';
- import 'package:gallery/routes.dart';
- import 'package:gallery/themes/gallery_theme_data.dart';
--import 'package:get_storage/get_storage.dart';
- import 'package:google_fonts/google_fonts.dart';
- 
- import 'firebase_options.dart';
-@@ -26,7 +25,6 @@ export 'package:gallery/data/demos.dart' show pumpDeferredLibraries;
- 
- void main() async {
-   GoogleFonts.config.allowRuntimeFetching = false;
--  await GetStorage.init();
- 
-   if (defaultTargetPlatform != TargetPlatform.linux &&
-       defaultTargetPlatform != TargetPlatform.windows &&
-diff --git a/pubspec.yaml b/pubspec.yaml
-index 964edad..4b00e40 100644
---- a/pubspec.yaml
-+++ b/pubspec.yaml
-@@ -24,7 +24,6 @@ dependencies:
-   firebase_core: ^2.7.0
-   firebase_crashlytics: ^3.1.1
-   firebase_performance: ^0.9.0+14
--  get_storage: ^2.1.1
-   google_fonts: ^5.0.0
-   intl: any # An exact version pin will be provided by the Flutter SDK
-   meta: ^1.7.0
--- 
-2.41.0
-
diff --git a/package/flutter-gallery/Config.in b/package/flutter-gallery/Config.in
index 224457ea6f..85d7a47e49 100644
--- a/package/flutter-gallery/Config.in
+++ b/package/flutter-gallery/Config.in
@@ -3,6 +3,7 @@ config BR2_PACKAGE_FLUTTER_GALLERY
 	depends on BR2_PACKAGE_HOST_FLUTTER_SDK_BIN_ARCH_SUPPORTS
 	depends on BR2_PACKAGE_FLUTTER_ENGINE
 	select BR2_PACKAGE_HOST_FLUTTER_SDK_BIN
+	select BR2_PACKAGE_XDG_USER_DIRS
 	help
 	  Flutter Gallery is a resource to help developers evaluate
 	  and use Flutter. It is a collection of Material Design &
diff --git a/package/flutter-gallery/flutter-gallery.mk b/package/flutter-gallery/flutter-gallery.mk
index 50ddd9ffba..5299b18134 100644
--- a/package/flutter-gallery/flutter-gallery.mk
+++ b/package/flutter-gallery/flutter-gallery.mk
@@ -10,7 +10,8 @@ FLUTTER_GALLERY_LICENSE = BSD-3-Clause
 FLUTTER_GALLERY_LICENSE_FILES = LICENSE
 FLUTTER_GALLERY_DEPENDENCIES = \
 	host-flutter-sdk-bin \
-	flutter-engine
+	flutter-engine \
+	xdg-user-dirs
 
 FLUTTER_GALLERY_INSTALL_DIR = $(TARGET_DIR)/usr/share/flutter/gallery/$(FLUTTER_ENGINE_RUNTIME_MODE)
 
@@ -25,9 +26,14 @@ 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 \
+			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] 13+ messages in thread

* [Buildroot] [PATCH v2 12/13] package/flutter-gallery: clean up install_target_cmds
  2023-12-18 18:54 [Buildroot] [PATCH v2 01/13] package/Config.in: move flutter-pi Adam Duskett
                   ` (9 preceding siblings ...)
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 11/13] package/flutter-gallery: depend on xdg-user-dirs and fix build options Adam Duskett
@ 2023-12-18 18:54 ` Adam Duskett
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 13/13] package/flutter-sdk-bin/Config.in.host: add pub-cache location option Adam Duskett
  11 siblings, 0 replies; 13+ messages in thread
From: Adam Duskett @ 2023-12-18 18:54 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, we should use exact symlinks to icudtl.dat and
  libflutter_engine.so. Besides, the output of ls -la looks cleaner as well!

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 5299b18134..492b426510 100644
--- a/package/flutter-gallery/flutter-gallery.mk
+++ b/package/flutter-gallery/flutter-gallery.mk
@@ -46,10 +46,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] 13+ messages in thread

* [Buildroot] [PATCH v2 13/13] package/flutter-sdk-bin/Config.in.host: add pub-cache location option
  2023-12-18 18:54 [Buildroot] [PATCH v2 01/13] package/Config.in: move flutter-pi Adam Duskett
                   ` (10 preceding siblings ...)
  2023-12-18 18:54 ` [Buildroot] [PATCH v2 12/13] package/flutter-gallery: clean up install_target_cmds Adam Duskett
@ 2023-12-18 18:54 ` Adam Duskett
  11 siblings, 0 replies; 13+ messages in thread
From: Adam Duskett @ 2023-12-18 18:54 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

When running the command "flutter pub get," the plugins are stored in the
pub-cache directory along with their sha256sum hashes. The default location of
the pub-cache directory is current $(HOST_DIR)/share/flutter/sdk/.pub-cache,
which is not an acceptable choice by default because every plugin will be
re-downloaded during every build of a flutter application when building with
the per-package-directory option enabled. Furthermore, keeping the pub-cache
in its current location prevents users from committing the pub-cache directory
to git for faster rebuilds.

To fix the above issue, add a new option to flutter-sdk-bin/Config.in.host,
BR2_PACKAGE_HOST_FLUTTER_SDK_BIN_PUB_CACHE_LOCATION and set the default to the
current default of $(DL_DIR)/br-flutter-pub-cache

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
v1 -> v2: Set default path to $(DL_DIR)/br-flutter-pub-cache [ Yann ]

 package/flutter-sdk-bin/Config.in.host     | 11 +++++++++++
 package/flutter-sdk-bin/flutter-sdk-bin.mk |  2 +-
 2 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/package/flutter-sdk-bin/Config.in.host b/package/flutter-sdk-bin/Config.in.host
index 181a2ee6e5..a1ac5835d9 100644
--- a/package/flutter-sdk-bin/Config.in.host
+++ b/package/flutter-sdk-bin/Config.in.host
@@ -13,3 +13,14 @@ config BR2_PACKAGE_HOST_FLUTTER_SDK_BIN
 	  free and open source.
 
 	  https://flutter.dev/
+
+if BR2_PACKAGE_HOST_FLUTTER_SDK_BIN_ARCH_SUPPORTS
+
+config BR2_PACKAGE_HOST_FLUTTER_SDK_BIN_PUB_CACHE_LOCATION
+	string "pub-cache location"
+	default "$(DL_DIR)/br-flutter-pub-cache"
+	help
+	  Directory to store cached packages used by Pub with
+	  Dart/Flutter.
+
+endif
diff --git a/package/flutter-sdk-bin/flutter-sdk-bin.mk b/package/flutter-sdk-bin/flutter-sdk-bin.mk
index 0c33d25089..6eea3f2a45 100644
--- a/package/flutter-sdk-bin/flutter-sdk-bin.mk
+++ b/package/flutter-sdk-bin/flutter-sdk-bin.mk
@@ -104,4 +104,4 @@ HOST_FLUTTER_SDK_BIN_DART_BIN = \
 $(eval $(host-generic-package))
 
 # For target packages to locate said pub-cache
-FLUTTER_SDK_BIN_PUB_CACHE = $(HOST_FLUTTER_SDK_BIN_SDK)/.pub-cache
+FLUTTER_SDK_BIN_PUB_CACHE = $(call qstrip,$(BR2_PACKAGE_HOST_FLUTTER_SDK_BIN_PUB_CACHE_LOCATION))
-- 
2.43.0

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

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

end of thread, other threads:[~2023-12-18 18:57 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-12-18 18:54 [Buildroot] [PATCH v2 01/13] package/Config.in: move flutter-pi Adam Duskett
2023-12-18 18:54 ` [Buildroot] [PATCH v2 02/13] package/Config.in: move flutter-gallery Adam Duskett
2023-12-18 18:54 ` [Buildroot] [PATCH v2 03/13] package/flutter-sdk-bin: bump version to 3.16.4 Adam Duskett
2023-12-18 18:54 ` [Buildroot] [PATCH v2 04/13] package/flutter-engine: " Adam Duskett
2023-12-18 18:54 ` [Buildroot] [PATCH v2 05/13] package/flutter-pi: bump version to f34d7bdbda713ba607b9625541ddfa314d9999a0 Adam Duskett
2023-12-18 18:54 ` [Buildroot] [PATCH v2 06/13] package/flutter-pi: add charset converter plugin option Adam Duskett
2023-12-18 18:54 ` [Buildroot] [PATCH v2 07/13] package/flutter-engine: Add profile runtime mode selection Adam Duskett
2023-12-18 18:54 ` [Buildroot] [PATCH v2 08/13] package/flutter-sdk-bin: add dart arguments for different runtime modes Adam Duskett
2023-12-18 18:54 ` [Buildroot] [PATCH v2 09/13] package/flutter-gallery: add a configure step Adam Duskett
2023-12-18 18:54 ` [Buildroot] [PATCH v2 10/13] package/xdg-user-dirs: new package Adam Duskett
2023-12-18 18:54 ` [Buildroot] [PATCH v2 11/13] package/flutter-gallery: depend on xdg-user-dirs and fix build options Adam Duskett
2023-12-18 18:54 ` [Buildroot] [PATCH v2 12/13] package/flutter-gallery: clean up install_target_cmds Adam Duskett
2023-12-18 18:54 ` [Buildroot] [PATCH v2 13/13] package/flutter-sdk-bin/Config.in.host: add pub-cache location option Adam Duskett

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.