All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v2 01/13] package/flutter-packages/flutter-markdown-example: new package
@ 2024-03-25 22:34 Adam Duskett
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 02/13] package/flutter-packages/flutter-adaptive-scaffold-example: " Adam Duskett
                   ` (12 more replies)
  0 siblings, 13 replies; 17+ messages in thread
From: Adam Duskett @ 2024-03-25 22:34 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

The maintainers of the flutter-gallery package archived the project as of
February 16, 2024, necessitating a new reference package for users to port
their Flutter applications to Buildroot. The flutter-packages repository is
the perfect candidate for a reference package for several reasons:
  - It contains the source code for Flutter's first-party packages.
  - Many of the packages contain examples.
  - Many of the examples include Linux-specific examples.
  - The repository is updated regularly and often automatically, ensuring
    compatibility with the latest versions of Flutter.

However, the layout of the flutter-packages repository stores all of the
examples in sub-directories, which creates an organizational problem; either
every example application is stored in packages/flutter-example-${name}, with
the version, site, site_method, license, license_files, and dependencies of
each package independent from each other, or, each example application is in a
sub-directory of the flutter-packages directory, and flutter-packages acts as
the primary source of the above variables.

As option one is a nightmare to maintain, this patch provides option two,
which only necessitates the use of two features rarely used together in
Buildroot: $(PKG_NAME)_DL_SUBDIR and $(PKG_NAME)_SOURCE. With these two options
appropriately set, each sub-package uses the flutter-packages source tarball,
which downloads once, saving time, disk space, bandwidth, and future
maintenance headaches.

Three variables in the .mk file help with subsequent patches that add more
example applications:
  - FLUTTER_MARKDOWN_EXAMPLE_PKG_NAME:
    - Set to the name of the application.

  - FLUTTER_MARKDOWN_EXAMPLE_INSTALL_DIR:
    - It uses the PKG_NAME variable to set the installation directory.

  - FLUTTER_MARKDOWN_EXAMPLE_SUBDIR:
    - Provides the directory in which to build the package.

With the above variables, adding subsequent packages involves minimal effort:
  - Copy, paste, and rename a sub-directory to a new package name.
  - Set the above variables to new names and directories.
  - Check to see if there are any new build commands, such as specifying a
    dart_plugin_registrant.dart file.

Another option that seems appealing is to have a single package, with the
Config.in options to select which example(s) to build. However, this option
does not work well for two reasons:

  - The logic between this package and the flutter-gallery package it replaces
    would be very different. As the flutter-gallery package acts as a reference
    package for other users, changing the logic would make the package difficult
    to parse and possibly useless for other users to use as a reference when
    porting their Flutter-based applications to Buildroot.

  - Not all packages in the flutter-package repository use the same directory
    structure. Take, for example, the flutter-rfw-local-example. The build
    directory is located at rfw/example/local, whereas most other packages are
    at ${pkg_name}/example, which makes a pure-foreach loop impossible.

These packages are intended for reference, and changing the logic instead of
using the same would hinder users from attempting to port their Flutter
applications to Buildroot. As such, this option is ruled out for the above
reasons.

The first package in this series is a Markdown example application that
displays several Markdown formatting demos. However, it does not support inline
HTML. This package also lacks a dart_plugin_registrant file, and unlike the
flutter-gallery package, the lines referencing such a file are not included in
the build commands. This is not a problem, but is something to note.

Also, the `FLUTTER_RUNTIME_MODES=$(FLUTTER_ENGINE_RUNTIME_MODE)` line from the
configure commands is not copied from the flutter-gallery package, as it was
included by mistake and did not have any effecton the clean command.

Note: The version of the flutter-packages git hash is set to
947e34ce9fedcdd6750b54eb1cc74b854b49ab48, the last commit that supported
Flutter 3.16.x. Newer versions require Flutter 3.19.x

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
v1 -> v2:
  - Use SUBDIR and BUILDDIR [Arnout]
  - Expand the commit message [Arnout]
  - Use the github helper [Arnout]

 DEVELOPERS                                    |  2 +
 package/Config.in                             |  1 +
 package/flutter-packages/Config.in            | 15 ++++++
 .../flutter-markdown-example/Config.in        |  7 +++
 .../flutter-markdown-example.hash             |  1 +
 .../flutter-markdown-example.mk               | 54 +++++++++++++++++++
 .../flutter-packages/flutter-packages.hash    |  3 ++
 package/flutter-packages/flutter-packages.mk  | 17 ++++++
 8 files changed, 100 insertions(+)
 create mode 100644 package/flutter-packages/Config.in
 create mode 100644 package/flutter-packages/flutter-markdown-example/Config.in
 create mode 120000 package/flutter-packages/flutter-markdown-example/flutter-markdown-example.hash
 create mode 100644 package/flutter-packages/flutter-markdown-example/flutter-markdown-example.mk
 create mode 100644 package/flutter-packages/flutter-packages.hash
 create mode 100644 package/flutter-packages/flutter-packages.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index cb2132e67a..8b487b04f3 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -33,6 +33,8 @@ F:	package/fcft/
 F:	package/foot/
 F:	package/flutter-engine/
 F:	package/flutter-gallery/
+F:	package/flutter-packages/
+F:	package/flutter-packages/flutter-markdown-example/
 F:	package/flutter-pi/
 F:	package/flutter-sdk-bin/
 F:	package/ivi-homescreen/
diff --git a/package/Config.in b/package/Config.in
index 1a62bfb1be..dfdc716857 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -316,6 +316,7 @@ comment "Graphic applications"
 	source "package/cog/Config.in"
 	source "package/dmenu-wayland/Config.in"
 	source "package/flutter-gallery/Config.in"
+	source "package/flutter-packages/Config.in"
 	source "package/flutter-pi/Config.in"
 	source "package/foot/Config.in"
 	source "package/fswebcam/Config.in"
diff --git a/package/flutter-packages/Config.in b/package/flutter-packages/Config.in
new file mode 100644
index 0000000000..7cedf7c473
--- /dev/null
+++ b/package/flutter-packages/Config.in
@@ -0,0 +1,15 @@
+menuconfig BR2_PACKAGE_FLUTTER_PACKAGES
+	bool "flutter packages"
+	depends on BR2_PACKAGE_HOST_FLUTTER_SDK_BIN_ARCH_SUPPORTS
+	depends on BR2_PACKAGE_FLUTTER_ENGINE
+	select BR2_PACKAGE_HOST_FLUTTER_SDK_BIN
+	help
+	  First-party Flutter package examples.
+
+if BR2_PACKAGE_FLUTTER_PACKAGES
+source "package/flutter-packages/flutter-markdown-example/Config.in"
+endif
+
+comment "flutter packages need flutter-engine"
+	depends on BR2_PACKAGE_HOST_FLUTTER_SDK_BIN_ARCH_SUPPORTS
+	depends on !BR2_PACKAGE_FLUTTER_ENGINE
diff --git a/package/flutter-packages/flutter-markdown-example/Config.in b/package/flutter-packages/flutter-markdown-example/Config.in
new file mode 100644
index 0000000000..939b21053c
--- /dev/null
+++ b/package/flutter-packages/flutter-markdown-example/Config.in
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_FLUTTER_MARKDOWN_EXAMPLE
+	bool "flutter markdown example"
+	help
+	  A markdown renderer for Flutter. It supports the original
+	  format, but no inline HTML.
+
+	  https://github.com/flutter/packages/tree/main/packages/flutter_markdown
diff --git a/package/flutter-packages/flutter-markdown-example/flutter-markdown-example.hash b/package/flutter-packages/flutter-markdown-example/flutter-markdown-example.hash
new file mode 120000
index 0000000000..879f2adb39
--- /dev/null
+++ b/package/flutter-packages/flutter-markdown-example/flutter-markdown-example.hash
@@ -0,0 +1 @@
+../flutter-packages.hash
\ No newline at end of file
diff --git a/package/flutter-packages/flutter-markdown-example/flutter-markdown-example.mk b/package/flutter-packages/flutter-markdown-example/flutter-markdown-example.mk
new file mode 100644
index 0000000000..eb6792fb02
--- /dev/null
+++ b/package/flutter-packages/flutter-markdown-example/flutter-markdown-example.mk
@@ -0,0 +1,54 @@
+################################################################################
+#
+# flutter-markdown-example
+#
+################################################################################
+
+FLUTTER_MARKDOWN_EXAMPLE_VERSION = $(FLUTTER_PACKAGES_VERSION)
+FLUTTER_MARKDOWN_EXAMPLE_SITE = $(FLUTTER_PACKAGES_SITE)
+FLUTTER_MARKDOWN_EXAMPLE_SITE_METHOD = $(FLUTTER_PACKAGES_SITE_METHOD)
+FLUTTER_MARKDOWN_EXAMPLE_SOURCE = $(FLUTTER_PACKAGES_SOURCE)
+FLUTTER_MARKDOWN_EXAMPLE_LICENSE = $(FLUTTER_PACKAGES_LICENSE)
+FLUTTER_MARKDOWN_EXAMPLE_LICENSE_FILES = $(FLUTTER_PACKAGES_LICENSE_FILES)
+FLUTTER_MARKDOWN_EXAMPLE_DL_SUBDIR = $(FLUTTER_PACKAGES_DL_SUBDIR)
+FLUTTER_MARKDOWN_EXAMPLE_DEPENDENCIES = $(FLUTTER_PACKAGES_DEPENDENCIES)
+FLUTTER_MARKDOWN_EXAMPLE_PKG_NAME = flutter_markdown_example
+FLUTTER_MARKDOWN_EXAMPLE_INSTALL_DIR = $(TARGET_DIR)/usr/share/flutter/$(FLUTTER_MARKDOWN_EXAMPLE_PKG_NAME)/$(FLUTTER_ENGINE_RUNTIME_MODE)
+FLUTTER_MARKDOWN_EXAMPLE_SUBDIR = packages/flutter_markdown/example
+
+define FLUTTER_MARKDOWN_EXAMPLE_CONFIGURE_CMDS
+	cd $(FLUTTER_MARKDOWN_EXAMPLE_BUILDDIR) && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) clean && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) pub get && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) build bundle
+endef
+
+define FLUTTER_MARKDOWN_EXAMPLE_BUILD_CMDS
+	cd $(FLUTTER_MARKDOWN_EXAMPLE_BUILDDIR) && \
+		$(HOST_FLUTTER_SDK_BIN_DART_BIN) \
+			--native-assets $(FLUTTER_MARKDOWN_EXAMPLE_BUILDDIR)/.dart_tool/flutter_build/*/native_assets.yaml \
+			package:$(FLUTTER_MARKDOWN_EXAMPLE_PKG_NAME)/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
+endef
+
+define FLUTTER_MARKDOWN_EXAMPLE_INSTALL_TARGET_CMDS
+	mkdir -p $(FLUTTER_MARKDOWN_EXAMPLE_INSTALL_DIR)/{data,lib}
+	cp -dprf $(FLUTTER_MARKDOWN_EXAMPLE_BUILDDIR)/build/flutter_assets $(FLUTTER_MARKDOWN_EXAMPLE_INSTALL_DIR)/data/
+
+	$(INSTALL) -D -m 0755 $(FLUTTER_MARKDOWN_EXAMPLE_BUILDDIR)/libapp.so \
+		$(FLUTTER_MARKDOWN_EXAMPLE_INSTALL_DIR)/lib/libapp.so
+
+	ln -sf /usr/share/flutter/$(FLUTTER_ENGINE_RUNTIME_MODE)/data/icudtl.dat \
+	$(FLUTTER_MARKDOWN_EXAMPLE_INSTALL_DIR)/data/
+
+	ln -sf /usr/lib/libflutter_engine.so $(FLUTTER_MARKDOWN_EXAMPLE_INSTALL_DIR)/lib/
+	$(RM) $(FLUTTER_MARKDOWN_EXAMPLE_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
+	touch $(FLUTTER_MARKDOWN_EXAMPLE_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
+endef
+
+$(eval $(generic-package))
diff --git a/package/flutter-packages/flutter-packages.hash b/package/flutter-packages/flutter-packages.hash
new file mode 100644
index 0000000000..994434e25c
--- /dev/null
+++ b/package/flutter-packages/flutter-packages.hash
@@ -0,0 +1,3 @@
+# Locally calculated
+sha256  8276276e050c1ea45787f74b0f8c915b8cf2162b6af8537ffa9886bd423f2828  flutter-packages-947e34ce9fedcdd6750b54eb1cc74b854b49ab48-br1.tar.gz
+sha256  89519eca6f7b9529b35bdddd623a58c3af06a88c458dbd6531ddb4675acf75a9  LICENSE
diff --git a/package/flutter-packages/flutter-packages.mk b/package/flutter-packages/flutter-packages.mk
new file mode 100644
index 0000000000..4beaa39325
--- /dev/null
+++ b/package/flutter-packages/flutter-packages.mk
@@ -0,0 +1,17 @@
+################################################################################
+#
+# flutter-packages
+#
+################################################################################
+
+FLUTTER_PACKAGES_VERSION = 947e34ce9fedcdd6750b54eb1cc74b854b49ab48
+FLUTTER_PACKAGES_SITE = $(call github,flutter,packages,$(FLUTTER_PACKAGES_VERSION))
+FLUTTER_PACKAGES_LICENSE = BSD-3-Clause
+FLUTTER_PACKAGES_LICENSE_FILES = LICENSE
+FLUTTER_PACKAGES_DL_SUBDIR = flutter-packages
+FLUTTER_PACKAGES_SOURCE = flutter-packages-$(FLUTTER_PACKAGES_VERSION)-br1.tar.gz
+FLUTTER_PACKAGES_DEPENDENCIES = \
+	host-flutter-sdk-bin \
+	flutter-engine
+
+include $(sort $(wildcard package/flutter-packages/*/*.mk))
-- 
2.44.0

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

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

* [Buildroot] [PATCH v2 02/13] package/flutter-packages/flutter-adaptive-scaffold-example: new package
  2024-03-25 22:34 [Buildroot] [PATCH v2 01/13] package/flutter-packages/flutter-markdown-example: new package Adam Duskett
@ 2024-03-25 22:34 ` Adam Duskett
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 03/13] package/flutter-packages/flutter-animations-example: " Adam Duskett
                   ` (11 subsequent siblings)
  12 siblings, 0 replies; 17+ messages in thread
From: Adam Duskett @ 2024-03-25 22:34 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

This package provides a nice-looking Gmail lookalike application using
Material 3.

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
v1 -> v2: Use SUBDIR and BUILDDIR [Arnout]

 DEVELOPERS                                    |  1 +
 package/flutter-packages/Config.in            |  1 +
 .../Config.in                                 |  8 +++
 .../flutter-adaptive-scaffold-example.hash    |  1 +
 .../flutter-adaptive-scaffold-example.mk      | 54 +++++++++++++++++++
 5 files changed, 65 insertions(+)
 create mode 100644 package/flutter-packages/flutter-adaptive-scaffold-example/Config.in
 create mode 120000 package/flutter-packages/flutter-adaptive-scaffold-example/flutter-adaptive-scaffold-example.hash
 create mode 100644 package/flutter-packages/flutter-adaptive-scaffold-example/flutter-adaptive-scaffold-example.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 8b487b04f3..f87a7c9e83 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -34,6 +34,7 @@ F:	package/foot/
 F:	package/flutter-engine/
 F:	package/flutter-gallery/
 F:	package/flutter-packages/
+F:	package/flutter-packages/flutter-adaptive-scaffold-example/
 F:	package/flutter-packages/flutter-markdown-example/
 F:	package/flutter-pi/
 F:	package/flutter-sdk-bin/
diff --git a/package/flutter-packages/Config.in b/package/flutter-packages/Config.in
index 7cedf7c473..9c4b42b74c 100644
--- a/package/flutter-packages/Config.in
+++ b/package/flutter-packages/Config.in
@@ -7,6 +7,7 @@ menuconfig BR2_PACKAGE_FLUTTER_PACKAGES
 	  First-party Flutter package examples.
 
 if BR2_PACKAGE_FLUTTER_PACKAGES
+source "package/flutter-packages/flutter-adaptive-scaffold-example/Config.in"
 source "package/flutter-packages/flutter-markdown-example/Config.in"
 endif
 
diff --git a/package/flutter-packages/flutter-adaptive-scaffold-example/Config.in b/package/flutter-packages/flutter-adaptive-scaffold-example/Config.in
new file mode 100644
index 0000000000..f7c448e06c
--- /dev/null
+++ b/package/flutter-packages/flutter-adaptive-scaffold-example/Config.in
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE
+	bool "flutter adaptive scaffold example"
+	help
+	  Adaptive Scaffold reacts to input from users, devices and
+	  screen elements and renders your Flutter application
+	  according to the Material 3 guidelines.
+
+	  https://github.com/flutter/packages/tree/main/packages/flutter_adaptive_scaffold/example
diff --git a/package/flutter-packages/flutter-adaptive-scaffold-example/flutter-adaptive-scaffold-example.hash b/package/flutter-packages/flutter-adaptive-scaffold-example/flutter-adaptive-scaffold-example.hash
new file mode 120000
index 0000000000..879f2adb39
--- /dev/null
+++ b/package/flutter-packages/flutter-adaptive-scaffold-example/flutter-adaptive-scaffold-example.hash
@@ -0,0 +1 @@
+../flutter-packages.hash
\ No newline at end of file
diff --git a/package/flutter-packages/flutter-adaptive-scaffold-example/flutter-adaptive-scaffold-example.mk b/package/flutter-packages/flutter-adaptive-scaffold-example/flutter-adaptive-scaffold-example.mk
new file mode 100644
index 0000000000..f6ac086115
--- /dev/null
+++ b/package/flutter-packages/flutter-adaptive-scaffold-example/flutter-adaptive-scaffold-example.mk
@@ -0,0 +1,54 @@
+################################################################################
+#
+# flutter-adaptive-scaffold-example
+#
+################################################################################
+
+FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_VERSION = $(FLUTTER_PACKAGES_VERSION)
+FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_SITE = $(FLUTTER_PACKAGES_SITE)
+FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_SITE_METHOD = $(FLUTTER_PACKAGES_SITE_METHOD)
+FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_SOURCE = $(FLUTTER_PACKAGES_SOURCE)
+FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_LICENSE = $(FLUTTER_PACKAGES_LICENSE)
+FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_LICENSE_FILES = $(FLUTTER_PACKAGES_LICENSE_FILES)
+FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_DL_SUBDIR = $(FLUTTER_PACKAGES_DL_SUBDIR)
+FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_DEPENDENCIES = $(FLUTTER_PACKAGES_DEPENDENCIES)
+FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_PKG_NAME = flutter_adaptive_scaffold_example
+FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_INSTALL_DIR = $(TARGET_DIR)/usr/share/flutter/$(FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_PKG_NAME)/$(FLUTTER_ENGINE_RUNTIME_MODE)
+FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_SUBDIR = packages/flutter_adaptive_scaffold/example
+
+define FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_CONFIGURE_CMDS
+	cd $(FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_BUILDDIR) && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) clean && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) pub get && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) build bundle
+endef
+
+define FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_BUILD_CMDS
+	cd $(FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_BUILDDIR) && \
+		$(HOST_FLUTTER_SDK_BIN_DART_BIN) \
+			--native-assets $(FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_BUILDDIR)/.dart_tool/flutter_build/*/native_assets.yaml \
+			package:$(FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_PKG_NAME)/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
+endef
+
+define FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_INSTALL_TARGET_CMDS
+	mkdir -p $(FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_INSTALL_DIR)/{data,lib}
+	cp -dprf $(FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_BUILDDIR)/build/flutter_assets $(FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_INSTALL_DIR)/data/
+
+	$(INSTALL) -D -m 0755 $(FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_BUILDDIR)/libapp.so \
+		$(FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_INSTALL_DIR)/lib/libapp.so
+
+	ln -sf /usr/share/flutter/$(FLUTTER_ENGINE_RUNTIME_MODE)/data/icudtl.dat \
+	$(FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_INSTALL_DIR)/data/
+
+	ln -sf /usr/lib/libflutter_engine.so $(FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_INSTALL_DIR)/lib/
+	$(RM) $(FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
+	touch $(FLUTTER_ADAPTIVE_SCAFFOLD_EXAMPLE_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
+endef
+
+$(eval $(generic-package))
-- 
2.44.0

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

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

* [Buildroot] [PATCH v2 03/13] package/flutter-packages/flutter-animations-example: new package
  2024-03-25 22:34 [Buildroot] [PATCH v2 01/13] package/flutter-packages/flutter-markdown-example: new package Adam Duskett
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 02/13] package/flutter-packages/flutter-adaptive-scaffold-example: " Adam Duskett
@ 2024-03-25 22:34 ` Adam Duskett
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 04/13] package/flutter-packages/flutter-dynamic-layouts-example: " Adam Duskett
                   ` (10 subsequent siblings)
  12 siblings, 0 replies; 17+ messages in thread
From: Adam Duskett @ 2024-03-25 22:34 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

This package provides examples of the following animations:
  - OpenContainer
  - SharedAxisTransition
  - FadeThroughTransisiton
  - FadeScaleTransition

The package also provides a toggle that slows all the animations.

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
v1 -> v2: Use SUBDIR and BUILDDIR [Arnout]

 DEVELOPERS                                    |  1 +
 package/flutter-packages/Config.in            |  1 +
 .../flutter-animations-example/Config.in      |  6 +++
 .../flutter-animations-example.hash           |  1 +
 .../flutter-animations-example.mk             | 54 +++++++++++++++++++
 5 files changed, 63 insertions(+)
 create mode 100644 package/flutter-packages/flutter-animations-example/Config.in
 create mode 120000 package/flutter-packages/flutter-animations-example/flutter-animations-example.hash
 create mode 100644 package/flutter-packages/flutter-animations-example/flutter-animations-example.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index f87a7c9e83..971b810859 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -35,6 +35,7 @@ F:	package/flutter-engine/
 F:	package/flutter-gallery/
 F:	package/flutter-packages/
 F:	package/flutter-packages/flutter-adaptive-scaffold-example/
+F:	package/flutter-packages/flutter-animations-example/
 F:	package/flutter-packages/flutter-markdown-example/
 F:	package/flutter-pi/
 F:	package/flutter-sdk-bin/
diff --git a/package/flutter-packages/Config.in b/package/flutter-packages/Config.in
index 9c4b42b74c..365e91cd99 100644
--- a/package/flutter-packages/Config.in
+++ b/package/flutter-packages/Config.in
@@ -8,6 +8,7 @@ menuconfig BR2_PACKAGE_FLUTTER_PACKAGES
 
 if BR2_PACKAGE_FLUTTER_PACKAGES
 source "package/flutter-packages/flutter-adaptive-scaffold-example/Config.in"
+source "package/flutter-packages/flutter-animations-example/Config.in"
 source "package/flutter-packages/flutter-markdown-example/Config.in"
 endif
 
diff --git a/package/flutter-packages/flutter-animations-example/Config.in b/package/flutter-packages/flutter-animations-example/Config.in
new file mode 100644
index 0000000000..c7801dccf1
--- /dev/null
+++ b/package/flutter-packages/flutter-animations-example/Config.in
@@ -0,0 +1,6 @@
+config BR2_PACKAGE_FLUTTER_ANIMATIONS_EXAMPLE
+	bool "flutter animations example"
+	help
+	  High quality pre-built Animations for Flutter
+
+	  https://github.com/flutter/packages/tree/main/packages/animations/example
diff --git a/package/flutter-packages/flutter-animations-example/flutter-animations-example.hash b/package/flutter-packages/flutter-animations-example/flutter-animations-example.hash
new file mode 120000
index 0000000000..879f2adb39
--- /dev/null
+++ b/package/flutter-packages/flutter-animations-example/flutter-animations-example.hash
@@ -0,0 +1 @@
+../flutter-packages.hash
\ No newline at end of file
diff --git a/package/flutter-packages/flutter-animations-example/flutter-animations-example.mk b/package/flutter-packages/flutter-animations-example/flutter-animations-example.mk
new file mode 100644
index 0000000000..2b5c896736
--- /dev/null
+++ b/package/flutter-packages/flutter-animations-example/flutter-animations-example.mk
@@ -0,0 +1,54 @@
+################################################################################
+#
+# flutter-animations-example
+#
+################################################################################
+
+FLUTTER_ANIMATIONS_EXAMPLE_VERSION = $(FLUTTER_PACKAGES_VERSION)
+FLUTTER_ANIMATIONS_EXAMPLE_SITE = $(FLUTTER_PACKAGES_SITE)
+FLUTTER_ANIMATIONS_EXAMPLE_SITE_METHOD = $(FLUTTER_PACKAGES_SITE_METHOD)
+FLUTTER_ANIMATIONS_EXAMPLE_SOURCE = $(FLUTTER_PACKAGES_SOURCE)
+FLUTTER_ANIMATIONS_EXAMPLE_LICENSE = $(FLUTTER_PACKAGES_LICENSE)
+FLUTTER_ANIMATIONS_EXAMPLE_LICENSE_FILES = $(FLUTTER_PACKAGES_LICENSE_FILES)
+FLUTTER_ANIMATIONS_EXAMPLE_DL_SUBDIR = $(FLUTTER_PACKAGES_DL_SUBDIR)
+FLUTTER_ANIMATIONS_EXAMPLE_DEPENDENCIES = $(FLUTTER_PACKAGES_DEPENDENCIES)
+FLUTTER_ANIMATIONS_EXAMPLE_PKG_NAME = animations_example
+FLUTTER_ANIMATIONS_EXAMPLE_INSTALL_DIR = $(TARGET_DIR)/usr/share/flutter/$(FLUTTER_ANIMATIONS_EXAMPLE_PKG_NAME)/$(FLUTTER_ENGINE_RUNTIME_MODE)
+FLUTTER_ANIMATIONS_EXAMPLE_SUBDIR = packages/animations/example
+
+define FLUTTER_ANIMATIONS_EXAMPLE_CONFIGURE_CMDS
+	cd $(FLUTTER_ANIMATIONS_EXAMPLE_BUILDDIR) && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) clean && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) pub get && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) build bundle
+endef
+
+define FLUTTER_ANIMATIONS_EXAMPLE_BUILD_CMDS
+	cd $(FLUTTER_ANIMATIONS_EXAMPLE_BUILDDIR) && \
+		$(HOST_FLUTTER_SDK_BIN_DART_BIN) \
+			--native-assets $(FLUTTER_ANIMATIONS_EXAMPLE_BUILDDIR)/.dart_tool/flutter_build/*/native_assets.yaml \
+			package:$(FLUTTER_ANIMATIONS_EXAMPLE_PKG_NAME)/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
+endef
+
+define FLUTTER_ANIMATIONS_EXAMPLE_INSTALL_TARGET_CMDS
+	mkdir -p $(FLUTTER_ANIMATIONS_EXAMPLE_INSTALL_DIR)/{data,lib}
+	cp -dprf $(FLUTTER_ANIMATIONS_EXAMPLE_BUILDDIR)/build/flutter_assets $(FLUTTER_ANIMATIONS_EXAMPLE_INSTALL_DIR)/data/
+
+	$(INSTALL) -D -m 0755 $(FLUTTER_ANIMATIONS_EXAMPLE_BUILDDIR)/libapp.so \
+		$(FLUTTER_ANIMATIONS_EXAMPLE_INSTALL_DIR)/lib/libapp.so
+
+	ln -sf /usr/share/flutter/$(FLUTTER_ENGINE_RUNTIME_MODE)/data/icudtl.dat \
+	$(FLUTTER_ANIMATIONS_EXAMPLE_INSTALL_DIR)/data/
+
+	ln -sf /usr/lib/libflutter_engine.so $(FLUTTER_ANIMATIONS_EXAMPLE_INSTALL_DIR)/lib/
+	$(RM) $(FLUTTER_ANIMATIONS_EXAMPLE_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
+	touch $(FLUTTER_ANIMATIONS_EXAMPLE_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
+endef
+
+$(eval $(generic-package))
-- 
2.44.0

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

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

* [Buildroot] [PATCH v2 04/13] package/flutter-packages/flutter-dynamic-layouts-example: new package
  2024-03-25 22:34 [Buildroot] [PATCH v2 01/13] package/flutter-packages/flutter-markdown-example: new package Adam Duskett
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 02/13] package/flutter-packages/flutter-adaptive-scaffold-example: " Adam Duskett
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 03/13] package/flutter-packages/flutter-animations-example: " Adam Duskett
@ 2024-03-25 22:34 ` Adam Duskett
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 05/13] package/flutter-packages/flutter-go-router-example: " Adam Duskett
                   ` (9 subsequent siblings)
  12 siblings, 0 replies; 17+ messages in thread
From: Adam Duskett @ 2024-03-25 22:34 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

This package provides two multi-sized tiles and different layouts:
Stagger and Wrap.

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
v1 -> v2: Use SUBDIR and BUILDDIR [Arnout]

 DEVELOPERS                                    |  1 +
 package/flutter-packages/Config.in            |  1 +
 .../flutter-dynamic-layouts-example/Config.in |  8 +++
 .../flutter-dynamic-layouts-example.hash      |  1 +
 .../flutter-dynamic-layouts-example.mk        | 54 +++++++++++++++++++
 5 files changed, 65 insertions(+)
 create mode 100644 package/flutter-packages/flutter-dynamic-layouts-example/Config.in
 create mode 120000 package/flutter-packages/flutter-dynamic-layouts-example/flutter-dynamic-layouts-example.hash
 create mode 100644 package/flutter-packages/flutter-dynamic-layouts-example/flutter-dynamic-layouts-example.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 971b810859..699551b503 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -36,6 +36,7 @@ F:	package/flutter-gallery/
 F:	package/flutter-packages/
 F:	package/flutter-packages/flutter-adaptive-scaffold-example/
 F:	package/flutter-packages/flutter-animations-example/
+F:	package/flutter-packages/flutter-dynamic-layouts-example/
 F:	package/flutter-packages/flutter-markdown-example/
 F:	package/flutter-pi/
 F:	package/flutter-sdk-bin/
diff --git a/package/flutter-packages/Config.in b/package/flutter-packages/Config.in
index 365e91cd99..17e68da8e1 100644
--- a/package/flutter-packages/Config.in
+++ b/package/flutter-packages/Config.in
@@ -9,6 +9,7 @@ menuconfig BR2_PACKAGE_FLUTTER_PACKAGES
 if BR2_PACKAGE_FLUTTER_PACKAGES
 source "package/flutter-packages/flutter-adaptive-scaffold-example/Config.in"
 source "package/flutter-packages/flutter-animations-example/Config.in"
+source "package/flutter-packages/flutter-dynamic-layouts-example/Config.in"
 source "package/flutter-packages/flutter-markdown-example/Config.in"
 endif
 
diff --git a/package/flutter-packages/flutter-dynamic-layouts-example/Config.in b/package/flutter-packages/flutter-dynamic-layouts-example/Config.in
new file mode 100644
index 0000000000..a3f6630795
--- /dev/null
+++ b/package/flutter-packages/flutter-dynamic-layouts-example/Config.in
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE
+	bool "flutter dynamic layouts example"
+	help
+	  This package provides support for multi sized tiles and
+	  different layouts. Currently the layouts that are implemented
+	  in this package are Stagger and Wrap.
+
+	  https://github.com/flutter/packages/tree/main/packages/dynamic_layouts/example
diff --git a/package/flutter-packages/flutter-dynamic-layouts-example/flutter-dynamic-layouts-example.hash b/package/flutter-packages/flutter-dynamic-layouts-example/flutter-dynamic-layouts-example.hash
new file mode 120000
index 0000000000..879f2adb39
--- /dev/null
+++ b/package/flutter-packages/flutter-dynamic-layouts-example/flutter-dynamic-layouts-example.hash
@@ -0,0 +1 @@
+../flutter-packages.hash
\ No newline at end of file
diff --git a/package/flutter-packages/flutter-dynamic-layouts-example/flutter-dynamic-layouts-example.mk b/package/flutter-packages/flutter-dynamic-layouts-example/flutter-dynamic-layouts-example.mk
new file mode 100644
index 0000000000..aefcf3f62c
--- /dev/null
+++ b/package/flutter-packages/flutter-dynamic-layouts-example/flutter-dynamic-layouts-example.mk
@@ -0,0 +1,54 @@
+################################################################################
+#
+# flutter-dynamic-layouts-example
+#
+################################################################################
+
+FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_VERSION = $(FLUTTER_PACKAGES_VERSION)
+FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_SITE = $(FLUTTER_PACKAGES_SITE)
+FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_SITE_METHOD = $(FLUTTER_PACKAGES_SITE_METHOD)
+FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_SOURCE = $(FLUTTER_PACKAGES_SOURCE)
+FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_LICENSE = $(FLUTTER_PACKAGES_LICENSE)
+FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_LICENSE_FILES = $(FLUTTER_PACKAGES_LICENSE_FILES)
+FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_DL_SUBDIR = $(FLUTTER_PACKAGES_DL_SUBDIR)
+FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_DEPENDENCIES = $(FLUTTER_PACKAGES_DEPENDENCIES)
+FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_PKG_NAME = example
+FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_INSTALL_DIR = $(TARGET_DIR)/usr/share/flutter/dynamc-layouts-$(FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_PKG_NAME)/$(FLUTTER_ENGINE_RUNTIME_MODE)
+FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_SUBDIR = packages/dynamic_layouts/example
+
+define FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_CONFIGURE_CMDS
+	cd $(FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_BUILDDIR) && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) clean && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) pub get && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) build bundle
+endef
+
+define FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_BUILD_CMDS
+	cd $(FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_BUILDDIR) && \
+		$(HOST_FLUTTER_SDK_BIN_DART_BIN) \
+			--native-assets $(FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_BUILDDIR)/.dart_tool/flutter_build/*/native_assets.yaml \
+			package:$(FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_PKG_NAME)/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
+endef
+
+define FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_INSTALL_TARGET_CMDS
+	mkdir -p $(FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_INSTALL_DIR)/{data,lib}
+	cp -dprf $(FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_BUILDDIR)/build/flutter_assets $(FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_INSTALL_DIR)/data/
+
+	$(INSTALL) -D -m 0755 $(FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_BUILDDIR)/libapp.so \
+		$(FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_INSTALL_DIR)/lib/libapp.so
+
+	ln -sf /usr/share/flutter/$(FLUTTER_ENGINE_RUNTIME_MODE)/data/icudtl.dat \
+	$(FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_INSTALL_DIR)/data/
+
+	ln -sf /usr/lib/libflutter_engine.so $(FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_INSTALL_DIR)/lib/
+	$(RM) $(FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
+	touch $(FLUTTER_DYNAMIC_LAYOUTS_EXAMPLE_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
+endef
+
+$(eval $(generic-package))
-- 
2.44.0

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

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

* [Buildroot] [PATCH v2 05/13] package/flutter-packages/flutter-go-router-example: new package
  2024-03-25 22:34 [Buildroot] [PATCH v2 01/13] package/flutter-packages/flutter-markdown-example: new package Adam Duskett
                   ` (2 preceding siblings ...)
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 04/13] package/flutter-packages/flutter-dynamic-layouts-example: " Adam Duskett
@ 2024-03-25 22:34 ` Adam Duskett
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 06/13] package/flutter-packages/flutter-image-example: " Adam Duskett
                   ` (8 subsequent siblings)
  12 siblings, 0 replies; 17+ messages in thread
From: Adam Duskett @ 2024-03-25 22:34 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

A Flutter plugin that manages files and interactions with file dialogs.
This package contains a dart_plugin_registrant dart file, much like the
flutter-gallery package. The build commands contain the three
lines from the flutter-gallery package referencing the
dart_plugin_registrant dart file.

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
v1 -> v2: Use SUBDIR and BUILDDIR [Arnout]

 DEVELOPERS                                    |  1 +
 package/flutter-packages/Config.in            |  1 +
 .../flutter-go-router-example/Config.in       |  7 +++
 .../flutter-go-router-example.hash            |  1 +
 .../flutter-go-router-example.mk              | 57 +++++++++++++++++++
 5 files changed, 67 insertions(+)
 create mode 100644 package/flutter-packages/flutter-go-router-example/Config.in
 create mode 120000 package/flutter-packages/flutter-go-router-example/flutter-go-router-example.hash
 create mode 100644 package/flutter-packages/flutter-go-router-example/flutter-go-router-example.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 699551b503..97418954c4 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -37,6 +37,7 @@ F:	package/flutter-packages/
 F:	package/flutter-packages/flutter-adaptive-scaffold-example/
 F:	package/flutter-packages/flutter-animations-example/
 F:	package/flutter-packages/flutter-dynamic-layouts-example/
+F:	package/flutter-packages/flutter-go-router-example/
 F:	package/flutter-packages/flutter-markdown-example/
 F:	package/flutter-pi/
 F:	package/flutter-sdk-bin/
diff --git a/package/flutter-packages/Config.in b/package/flutter-packages/Config.in
index 17e68da8e1..bbcd3aec93 100644
--- a/package/flutter-packages/Config.in
+++ b/package/flutter-packages/Config.in
@@ -10,6 +10,7 @@ if BR2_PACKAGE_FLUTTER_PACKAGES
 source "package/flutter-packages/flutter-adaptive-scaffold-example/Config.in"
 source "package/flutter-packages/flutter-animations-example/Config.in"
 source "package/flutter-packages/flutter-dynamic-layouts-example/Config.in"
+source "package/flutter-packages/flutter-go-router-example/Config.in"
 source "package/flutter-packages/flutter-markdown-example/Config.in"
 endif
 
diff --git a/package/flutter-packages/flutter-go-router-example/Config.in b/package/flutter-packages/flutter-go-router-example/Config.in
new file mode 100644
index 0000000000..8cdb61e3bc
--- /dev/null
+++ b/package/flutter-packages/flutter-go-router-example/Config.in
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_FLUTTER_GO_ROUTER_EXAMPLE
+	bool "flutter go router example"
+	help
+	  A Flutter plugin that manages files and interactions
+	  with file dialogs.
+
+	  https://github.com/flutter/packages/tree/main/packages/go_router/example
diff --git a/package/flutter-packages/flutter-go-router-example/flutter-go-router-example.hash b/package/flutter-packages/flutter-go-router-example/flutter-go-router-example.hash
new file mode 120000
index 0000000000..879f2adb39
--- /dev/null
+++ b/package/flutter-packages/flutter-go-router-example/flutter-go-router-example.hash
@@ -0,0 +1 @@
+../flutter-packages.hash
\ No newline at end of file
diff --git a/package/flutter-packages/flutter-go-router-example/flutter-go-router-example.mk b/package/flutter-packages/flutter-go-router-example/flutter-go-router-example.mk
new file mode 100644
index 0000000000..a7fa36ca9e
--- /dev/null
+++ b/package/flutter-packages/flutter-go-router-example/flutter-go-router-example.mk
@@ -0,0 +1,57 @@
+################################################################################
+#
+# flutter-go-router-example
+#
+################################################################################
+
+FLUTTER_GO_ROUTER_EXAMPLE_VERSION = $(FLUTTER_PACKAGES_VERSION)
+FLUTTER_GO_ROUTER_EXAMPLE_SITE = $(FLUTTER_PACKAGES_SITE)
+FLUTTER_GO_ROUTER_EXAMPLE_SITE_METHOD = $(FLUTTER_PACKAGES_SITE_METHOD)
+FLUTTER_GO_ROUTER_EXAMPLE_SOURCE = $(FLUTTER_PACKAGES_SOURCE)
+FLUTTER_GO_ROUTER_EXAMPLE_LICENSE = $(FLUTTER_PACKAGES_LICENSE)
+FLUTTER_GO_ROUTER_EXAMPLE_LICENSE_FILES = $(FLUTTER_PACKAGES_LICENSE_FILES)
+FLUTTER_GO_ROUTER_EXAMPLE_DL_SUBDIR = $(FLUTTER_PACKAGES_DL_SUBDIR)
+FLUTTER_GO_ROUTER_EXAMPLE_DEPENDENCIES = $(FLUTTER_PACKAGES_DEPENDENCIES)
+FLUTTER_GO_ROUTER_EXAMPLE_PKG_NAME = go_router_examples
+FLUTTER_GO_ROUTER_EXAMPLE_INSTALL_DIR = $(TARGET_DIR)/usr/share/flutter/$(FLUTTER_GO_ROUTER_EXAMPLE_PKG_NAME)/$(FLUTTER_ENGINE_RUNTIME_MODE)
+FLUTTER_GO_ROUTER_EXAMPLE_SUBDIR = packages/go_router/example
+
+define FLUTTER_GO_ROUTER_EXAMPLE_CONFIGURE_CMDS
+	cd $(FLUTTER_GO_ROUTER_EXAMPLE_BUILDDIR) && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) clean && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) pub get && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) build bundle
+endef
+
+define FLUTTER_GO_ROUTER_EXAMPLE_BUILD_CMDS
+	cd $(FLUTTER_GO_ROUTER_EXAMPLE_BUILDDIR) && \
+		$(HOST_FLUTTER_SDK_BIN_DART_BIN) \
+			-Dflutter.dart_plugin_registrant=file://$(FLUTTER_GO_ROUTER_EXAMPLE_BUILDDIR)/.dart_tool/flutter_build/dart_plugin_registrant.dart \
+			--source file://$(FLUTTER_GO_ROUTER_EXAMPLE_BUILDDIR)/.dart_tool/flutter_build/dart_plugin_registrant.dart \
+			--source package:flutter/src/dart_plugin_registrant.dart \
+			--native-assets $(FLUTTER_GO_ROUTER_EXAMPLE_BUILDDIR)/.dart_tool/flutter_build/*/native_assets.yaml \
+			package:$(FLUTTER_GO_ROUTER_EXAMPLE_PKG_NAME)/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
+endef
+
+define FLUTTER_GO_ROUTER_EXAMPLE_INSTALL_TARGET_CMDS
+	mkdir -p $(FLUTTER_GO_ROUTER_EXAMPLE_INSTALL_DIR)/{data,lib}
+	cp -dprf $(FLUTTER_GO_ROUTER_EXAMPLE_BUILDDIR)/build/flutter_assets $(FLUTTER_GO_ROUTER_EXAMPLE_INSTALL_DIR)/data/
+
+	$(INSTALL) -D -m 0755 $(FLUTTER_GO_ROUTER_EXAMPLE_BUILDDIR)/libapp.so \
+		$(FLUTTER_GO_ROUTER_EXAMPLE_INSTALL_DIR)/lib/libapp.so
+
+	ln -sf /usr/share/flutter/$(FLUTTER_ENGINE_RUNTIME_MODE)/data/icudtl.dat \
+	$(FLUTTER_GO_ROUTER_EXAMPLE_INSTALL_DIR)/data/
+
+	ln -sf /usr/lib/libflutter_engine.so $(FLUTTER_GO_ROUTER_EXAMPLE_INSTALL_DIR)/lib/
+	$(RM) $(FLUTTER_GO_ROUTER_EXAMPLE_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
+	touch $(FLUTTER_GO_ROUTER_EXAMPLE_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
+endef
+
+$(eval $(generic-package))
-- 
2.44.0

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

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

* [Buildroot] [PATCH v2 06/13] package/flutter-packages/flutter-image-example: new package
  2024-03-25 22:34 [Buildroot] [PATCH v2 01/13] package/flutter-packages/flutter-markdown-example: new package Adam Duskett
                   ` (3 preceding siblings ...)
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 05/13] package/flutter-packages/flutter-go-router-example: " Adam Duskett
@ 2024-03-25 22:34 ` Adam Duskett
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 07/13] package/flutter-packages/flutter-rfw-local-example: " Adam Duskett
                   ` (7 subsequent siblings)
  12 siblings, 0 replies; 17+ messages in thread
From: Adam Duskett @ 2024-03-25 22:34 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

This package uses the NetworkImageWithRetry method to download the Flutter
logo. The package requires ca-certificates, or else SSL errors occur when
the application attempts to download the image.

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
v1 -> v2: Use SUBDIR and BUILDDIR [Arnout]

 DEVELOPERS                                    |  1 +
 package/flutter-packages/Config.in            |  1 +
 .../flutter-image-example/Config.in           |  8 +++
 .../flutter-image-example.hash                |  1 +
 .../flutter-image-example.mk                  | 54 +++++++++++++++++++
 5 files changed, 65 insertions(+)
 create mode 100644 package/flutter-packages/flutter-image-example/Config.in
 create mode 120000 package/flutter-packages/flutter-image-example/flutter-image-example.hash
 create mode 100644 package/flutter-packages/flutter-image-example/flutter-image-example.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 97418954c4..80dd061469 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -38,6 +38,7 @@ F:	package/flutter-packages/flutter-adaptive-scaffold-example/
 F:	package/flutter-packages/flutter-animations-example/
 F:	package/flutter-packages/flutter-dynamic-layouts-example/
 F:	package/flutter-packages/flutter-go-router-example/
+F:	package/flutter-packages/flutter-image-example/
 F:	package/flutter-packages/flutter-markdown-example/
 F:	package/flutter-pi/
 F:	package/flutter-sdk-bin/
diff --git a/package/flutter-packages/Config.in b/package/flutter-packages/Config.in
index bbcd3aec93..bfaccef264 100644
--- a/package/flutter-packages/Config.in
+++ b/package/flutter-packages/Config.in
@@ -11,6 +11,7 @@ source "package/flutter-packages/flutter-adaptive-scaffold-example/Config.in"
 source "package/flutter-packages/flutter-animations-example/Config.in"
 source "package/flutter-packages/flutter-dynamic-layouts-example/Config.in"
 source "package/flutter-packages/flutter-go-router-example/Config.in"
+source "package/flutter-packages/flutter-image-example/Config.in"
 source "package/flutter-packages/flutter-markdown-example/Config.in"
 endif
 
diff --git a/package/flutter-packages/flutter-image-example/Config.in b/package/flutter-packages/flutter-image-example/Config.in
new file mode 100644
index 0000000000..15ae20872a
--- /dev/null
+++ b/package/flutter-packages/flutter-image-example/Config.in
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_FLUTTER_IMAGE_EXAMPLE
+	bool "flutter image example"
+	select BR2_PACKAGE_CA_CERTIFICATES # runtime
+	help
+	  Use NetworkImageWithRetry instead of Image.network to
+	  load images from the network with a retry mechanism.
+
+	  https://github.com/flutter/packages/tree/main/packages/flutter_image/example
diff --git a/package/flutter-packages/flutter-image-example/flutter-image-example.hash b/package/flutter-packages/flutter-image-example/flutter-image-example.hash
new file mode 120000
index 0000000000..879f2adb39
--- /dev/null
+++ b/package/flutter-packages/flutter-image-example/flutter-image-example.hash
@@ -0,0 +1 @@
+../flutter-packages.hash
\ No newline at end of file
diff --git a/package/flutter-packages/flutter-image-example/flutter-image-example.mk b/package/flutter-packages/flutter-image-example/flutter-image-example.mk
new file mode 100644
index 0000000000..20f185896d
--- /dev/null
+++ b/package/flutter-packages/flutter-image-example/flutter-image-example.mk
@@ -0,0 +1,54 @@
+################################################################################
+#
+# flutter-image-example
+#
+################################################################################
+
+FLUTTER_IMAGE_EXAMPLE_VERSION = $(FLUTTER_PACKAGES_VERSION)
+FLUTTER_IMAGE_EXAMPLE_SITE = $(FLUTTER_PACKAGES_SITE)
+FLUTTER_IMAGE_EXAMPLE_SITE_METHOD = $(FLUTTER_PACKAGES_SITE_METHOD)
+FLUTTER_IMAGE_EXAMPLE_SOURCE = $(FLUTTER_PACKAGES_SOURCE)
+FLUTTER_IMAGE_EXAMPLE_LICENSE = $(FLUTTER_PACKAGES_LICENSE)
+FLUTTER_IMAGE_EXAMPLE_LICENSE_FILES = $(FLUTTER_PACKAGES_LICENSE_FILES)
+FLUTTER_IMAGE_EXAMPLE_DL_SUBDIR = $(FLUTTER_PACKAGES_DL_SUBDIR)
+FLUTTER_IMAGE_EXAMPLE_DEPENDENCIES = $(FLUTTER_PACKAGES_DEPENDENCIES)
+FLUTTER_IMAGE_EXAMPLE_PKG_NAME = flutter_image_example
+FLUTTER_IMAGE_EXAMPLE_INSTALL_DIR = $(TARGET_DIR)/usr/share/flutter/$(FLUTTER_IMAGE_EXAMPLE_PKG_NAME)/$(FLUTTER_ENGINE_RUNTIME_MODE)
+FLUTTER_IMAGE_EXAMPLE_SUBDIR = packages/flutter_image/example
+
+define FLUTTER_IMAGE_EXAMPLE_CONFIGURE_CMDS
+	cd $(FLUTTER_IMAGE_EXAMPLE_BUILDDIR) && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) clean && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) pub get && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) build bundle
+endef
+
+define FLUTTER_IMAGE_EXAMPLE_BUILD_CMDS
+	cd $(FLUTTER_IMAGE_EXAMPLE_BUILDDIR) && \
+		$(HOST_FLUTTER_SDK_BIN_DART_BIN) \
+			--native-assets $(FLUTTER_IMAGE_EXAMPLE_BUILDDIR)/.dart_tool/flutter_build/*/native_assets.yaml \
+			package:$(FLUTTER_IMAGE_EXAMPLE_PKG_NAME)/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
+endef
+
+define FLUTTER_IMAGE_EXAMPLE_INSTALL_TARGET_CMDS
+	mkdir -p $(FLUTTER_IMAGE_EXAMPLE_INSTALL_DIR)/{data,lib}
+	cp -dprf $(FLUTTER_IMAGE_EXAMPLE_BUILDDIR)/build/flutter_assets $(FLUTTER_IMAGE_EXAMPLE_INSTALL_DIR)/data/
+
+	$(INSTALL) -D -m 0755 $(FLUTTER_IMAGE_EXAMPLE_BUILDDIR)/libapp.so \
+		$(FLUTTER_IMAGE_EXAMPLE_INSTALL_DIR)/lib/libapp.so
+
+	ln -sf /usr/share/flutter/$(FLUTTER_ENGINE_RUNTIME_MODE)/data/icudtl.dat \
+	$(FLUTTER_IMAGE_EXAMPLE_INSTALL_DIR)/data/
+
+	ln -sf /usr/lib/libflutter_engine.so $(FLUTTER_IMAGE_EXAMPLE_INSTALL_DIR)/lib/
+	$(RM) $(FLUTTER_IMAGE_EXAMPLE_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
+	touch $(FLUTTER_IMAGE_EXAMPLE_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
+endef
+
+$(eval $(generic-package))
-- 
2.44.0

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

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

* [Buildroot] [PATCH v2 07/13] package/flutter-packages/flutter-rfw-local-example: new package
  2024-03-25 22:34 [Buildroot] [PATCH v2 01/13] package/flutter-packages/flutter-markdown-example: new package Adam Duskett
                   ` (4 preceding siblings ...)
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 06/13] package/flutter-packages/flutter-image-example: " Adam Duskett
@ 2024-03-25 22:34 ` Adam Duskett
  2024-03-25 23:05   ` Arnout Vandecappelle via buildroot
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 08/13] support/testing/tests/package/test_flutter.py: use flutter-markdown-example Adam Duskett
                   ` (6 subsequent siblings)
  12 siblings, 1 reply; 17+ messages in thread
From: Adam Duskett @ 2024-03-25 22:34 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

Displays a custom "Hello, World!" custom widget in a
remote Flutter widget (RFW) for use by a remote widget.

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
v1 -> v2: Use SUBDIR and BUILDDIR [Arnout]

 DEVELOPERS                                    |  1 +
 package/flutter-packages/Config.in            |  1 +
 .../flutter-rfw-local-example/Config.in       |  7 +++
 .../flutter-rfw-local-example.hash            |  1 +
 .../flutter-rfw-local-example.mk              | 54 +++++++++++++++++++
 5 files changed, 64 insertions(+)
 create mode 100644 package/flutter-packages/flutter-rfw-local-example/Config.in
 create mode 120000 package/flutter-packages/flutter-rfw-local-example/flutter-rfw-local-example.hash
 create mode 100644 package/flutter-packages/flutter-rfw-local-example/flutter-rfw-local-example.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 80dd061469..38079407c5 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -40,6 +40,7 @@ F:	package/flutter-packages/flutter-dynamic-layouts-example/
 F:	package/flutter-packages/flutter-go-router-example/
 F:	package/flutter-packages/flutter-image-example/
 F:	package/flutter-packages/flutter-markdown-example/
+F:	package/flutter-packages/flutter-rfw-local-example/
 F:	package/flutter-pi/
 F:	package/flutter-sdk-bin/
 F:	package/ivi-homescreen/
diff --git a/package/flutter-packages/Config.in b/package/flutter-packages/Config.in
index bfaccef264..4e3e29582f 100644
--- a/package/flutter-packages/Config.in
+++ b/package/flutter-packages/Config.in
@@ -13,6 +13,7 @@ source "package/flutter-packages/flutter-dynamic-layouts-example/Config.in"
 source "package/flutter-packages/flutter-go-router-example/Config.in"
 source "package/flutter-packages/flutter-image-example/Config.in"
 source "package/flutter-packages/flutter-markdown-example/Config.in"
+source "package/flutter-packages/flutter-rfw-local-example/Config.in"
 endif
 
 comment "flutter packages need flutter-engine"
diff --git a/package/flutter-packages/flutter-rfw-local-example/Config.in b/package/flutter-packages/flutter-rfw-local-example/Config.in
new file mode 100644
index 0000000000..42324a1eaa
--- /dev/null
+++ b/package/flutter-packages/flutter-rfw-local-example/Config.in
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_FLUTTER_RFW_LOCAL_EXAMPLE
+	bool "remote flutter widgets example"
+	help
+	  This example shows how one can create custom widgets in an RFW
+	  client, for use by remote widgets.
+
+	  https://github.com/flutter/packages/tree/main/packages/rfw/example/local
diff --git a/package/flutter-packages/flutter-rfw-local-example/flutter-rfw-local-example.hash b/package/flutter-packages/flutter-rfw-local-example/flutter-rfw-local-example.hash
new file mode 120000
index 0000000000..879f2adb39
--- /dev/null
+++ b/package/flutter-packages/flutter-rfw-local-example/flutter-rfw-local-example.hash
@@ -0,0 +1 @@
+../flutter-packages.hash
\ No newline at end of file
diff --git a/package/flutter-packages/flutter-rfw-local-example/flutter-rfw-local-example.mk b/package/flutter-packages/flutter-rfw-local-example/flutter-rfw-local-example.mk
new file mode 100644
index 0000000000..b57c021f8b
--- /dev/null
+++ b/package/flutter-packages/flutter-rfw-local-example/flutter-rfw-local-example.mk
@@ -0,0 +1,54 @@
+################################################################################
+#
+# flutter-rfw-local-example
+#
+################################################################################
+
+FLUTTER_RFW_LOCAL_EXAMPLE_VERSION = $(FLUTTER_PACKAGES_VERSION)
+FLUTTER_RFW_LOCAL_EXAMPLE_SITE = $(FLUTTER_PACKAGES_SITE)
+FLUTTER_RFW_LOCAL_EXAMPLE_SITE_METHOD = $(FLUTTER_PACKAGES_SITE_METHOD)
+FLUTTER_RFW_LOCAL_EXAMPLE_SOURCE = $(FLUTTER_PACKAGES_SOURCE)
+FLUTTER_RFW_LOCAL_EXAMPLE_LICENSE = $(FLUTTER_PACKAGES_LICENSE)
+FLUTTER_RFW_LOCAL_EXAMPLE_LICENSE_FILES = $(FLUTTER_PACKAGES_LICENSE_FILES)
+FLUTTER_RFW_LOCAL_EXAMPLE_DL_SUBDIR = $(FLUTTER_PACKAGES_DL_SUBDIR)
+FLUTTER_RFW_LOCAL_EXAMPLE_DEPENDENCIES = $(FLUTTER_PACKAGES_DEPENDENCIES)
+FLUTTER_RFW_LOCAL_EXAMPLE_PKG_NAME = local
+FLUTTER_RFW_LOCAL_EXAMPLE_INSTALL_DIR = $(TARGET_DIR)/usr/share/flutter/rfw-$(FLUTTER_RFW_LOCAL_EXAMPLE_PKG_NAME)-example/$(FLUTTER_ENGINE_RUNTIME_MODE)
+FLUTTER_RFW_LOCAL_EXAMPLE_SUBDIR = packages/rfw/example/local
+
+define FLUTTER_RFW_LOCAL_EXAMPLE_CONFIGURE_CMDS
+	cd $(FLUTTER_RFW_LOCAL_EXAMPLE_BUILDDIR) && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) clean && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) pub get && \
+		$(HOST_FLUTTER_SDK_BIN_FLUTTER) build bundle
+endef
+
+define FLUTTER_RFW_LOCAL_EXAMPLE_BUILD_CMDS
+	cd $(FLUTTER_RFW_LOCAL_EXAMPLE_BUILDDIR) && \
+		$(HOST_FLUTTER_SDK_BIN_DART_BIN) \
+			--native-assets $(FLUTTER_RFW_LOCAL_EXAMPLE_BUILDDIR)/.dart_tool/flutter_build/*/native_assets.yaml \
+			package:$(FLUTTER_RFW_LOCAL_EXAMPLE_PKG_NAME)/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
+endef
+
+define FLUTTER_RFW_LOCAL_EXAMPLE_INSTALL_TARGET_CMDS
+	mkdir -p $(FLUTTER_RFW_LOCAL_EXAMPLE_INSTALL_DIR)/{data,lib}
+	cp -dprf $(FLUTTER_RFW_LOCAL_EXAMPLE_BUILDDIR)/build/flutter_assets $(FLUTTER_RFW_LOCAL_EXAMPLE_INSTALL_DIR)/data/
+
+	$(INSTALL) -D -m 0755 $(FLUTTER_RFW_LOCAL_EXAMPLE_BUILDDIR)/libapp.so \
+		$(FLUTTER_RFW_LOCAL_EXAMPLE_INSTALL_DIR)/lib/libapp.so
+
+	ln -sf /usr/share/flutter/$(FLUTTER_ENGINE_RUNTIME_MODE)/data/icudtl.dat \
+	$(FLUTTER_RFW_LOCAL_EXAMPLE_INSTALL_DIR)/data/
+
+	ln -sf /usr/lib/libflutter_engine.so $(FLUTTER_RFW_LOCAL_EXAMPLE_INSTALL_DIR)/lib/
+	$(RM) $(FLUTTER_RFW_LOCAL_EXAMPLE_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
+	touch $(FLUTTER_RFW_LOCAL_EXAMPLE_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
+endef
+
+$(eval $(generic-package))
-- 
2.44.0

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

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

* [Buildroot] [PATCH v2 08/13] support/testing/tests/package/test_flutter.py: use flutter-markdown-example
  2024-03-25 22:34 [Buildroot] [PATCH v2 01/13] package/flutter-packages/flutter-markdown-example: new package Adam Duskett
                   ` (5 preceding siblings ...)
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 07/13] package/flutter-packages/flutter-rfw-local-example: " Adam Duskett
@ 2024-03-25 22:34 ` Adam Duskett
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 09/13] package/flutter-gallery: drop package Adam Duskett
                   ` (5 subsequent siblings)
  12 siblings, 0 replies; 17+ messages in thread
From: Adam Duskett @ 2024-03-25 22:34 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

The maintainers of the flutter-gallery package archived the project as of
February 16, 2024. In addition, the flutter-gallery package is incompatible
with Flutter 3.19.x. Because of these problems, using the flutter-gallery
package as the testing application for Flutter is no longer reasonable nor
maintainable.

However, it is reasonable to use the flutter-markdown-example package from
flutter-packages, as it is a first-party application updated regularly and
often automatically, ensuring compatibility with the latest versions of
Flutter.

  - Switch the package used for Flutter testing from flutter-gallery to
    flutter-markdown-example

  - Rename flutter-gallery.service to flutter-markdown-example.service

  - Change /usr/share/flutter/gallery/release/ to
    /usr/share/flutter/flutter_markdown_example/release/

  - Run `systemctl is-active flutter-markdown-example` instead of
   `systemctl is-active flutter-gallery`

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
 support/testing/tests/package/test_flutter.py         |  5 +++--
 .../multi-user.target.wants/flutter-gallery.service   |  1 -
 .../flutter-markdown-example.service                  |  1 +
 .../usr/lib/systemd/system/flutter-gallery.service    | 11 -----------
 .../systemd/system/flutter-markdown-example.service   | 11 +++++++++++
 5 files changed, 15 insertions(+), 14 deletions(-)
 delete mode 120000 support/testing/tests/package/test_flutter/overlay/etc/systemd/system/multi-user.target.wants/flutter-gallery.service
 create mode 120000 support/testing/tests/package/test_flutter/overlay/etc/systemd/system/multi-user.target.wants/flutter-markdown-example.service
 delete mode 100644 support/testing/tests/package/test_flutter/overlay/usr/lib/systemd/system/flutter-gallery.service
 create mode 100644 support/testing/tests/package/test_flutter/overlay/usr/lib/systemd/system/flutter-markdown-example.service

diff --git a/support/testing/tests/package/test_flutter.py b/support/testing/tests/package/test_flutter.py
index a3e98a43e5..3a150a69e1 100644
--- a/support/testing/tests/package/test_flutter.py
+++ b/support/testing/tests/package/test_flutter.py
@@ -25,7 +25,8 @@ class TestFlutter(infra.basetest.BRTest):
         BR2_PACKAGE_FLUTTER_PI=y
         BR2_PACKAGE_FLUTTER_PI_RAW_KEYBOARD_PLUGIN=y
         BR2_PACKAGE_FLUTTER_PI_TEXT_INPUT_PLUGIN=y
-        BR2_PACKAGE_FLUTTER_GALLERY=y
+        BR2_PACKAGE_FLUTTER_PACKAGES=y
+        BR2_PACKAGE_FLUTTER_MARKDOWN_EXAMPLE=y
         BR2_PACKAGE_FLUTTER_ENGINE=y
         BR2_TARGET_ROOTFS_EXT2=y
         BR2_TARGET_ROOTFS_EXT2_4=y
@@ -48,7 +49,7 @@ class TestFlutter(infra.basetest.BRTest):
                      "-vnc", "none",
                      "-drive", f"file={img},if=virtio,format=raw"])
         self.emulator.login()
-        cmd = "systemctl is-active flutter-gallery"
+        cmd = "systemctl is-active flutter-markdown-example"
         output, exit_code = self.emulator.run(cmd, 10)
         self.assertEqual(exit_code, 0)
         self.assertEqual(output[0], "active")
diff --git a/support/testing/tests/package/test_flutter/overlay/etc/systemd/system/multi-user.target.wants/flutter-gallery.service b/support/testing/tests/package/test_flutter/overlay/etc/systemd/system/multi-user.target.wants/flutter-gallery.service
deleted file mode 120000
index 40993fb16c..0000000000
--- a/support/testing/tests/package/test_flutter/overlay/etc/systemd/system/multi-user.target.wants/flutter-gallery.service
+++ /dev/null
@@ -1 +0,0 @@
-../../../../usr/lib/systemd/system/flutter-gallery.service
\ No newline at end of file
diff --git a/support/testing/tests/package/test_flutter/overlay/etc/systemd/system/multi-user.target.wants/flutter-markdown-example.service b/support/testing/tests/package/test_flutter/overlay/etc/systemd/system/multi-user.target.wants/flutter-markdown-example.service
new file mode 120000
index 0000000000..83e731ba2d
--- /dev/null
+++ b/support/testing/tests/package/test_flutter/overlay/etc/systemd/system/multi-user.target.wants/flutter-markdown-example.service
@@ -0,0 +1 @@
+../../../../usr/lib/systemd/system/flutter-markdown-example.service
\ No newline at end of file
diff --git a/support/testing/tests/package/test_flutter/overlay/usr/lib/systemd/system/flutter-gallery.service b/support/testing/tests/package/test_flutter/overlay/usr/lib/systemd/system/flutter-gallery.service
deleted file mode 100644
index 88a2bcbf0b..0000000000
--- a/support/testing/tests/package/test_flutter/overlay/usr/lib/systemd/system/flutter-gallery.service
+++ /dev/null
@@ -1,11 +0,0 @@
-[Unit]
-Description=flutter-gallery daemon
-After=dbus.service systemd-udevd.service
-
-[Service]
-ExecStart=/usr/bin/flutter-pi --release /usr/share/flutter/gallery/release/
-Restart=always
-KillMode=process
-
-[Install]
-WantedBy=multi-user.target
diff --git a/support/testing/tests/package/test_flutter/overlay/usr/lib/systemd/system/flutter-markdown-example.service b/support/testing/tests/package/test_flutter/overlay/usr/lib/systemd/system/flutter-markdown-example.service
new file mode 100644
index 0000000000..2a64b88c2d
--- /dev/null
+++ b/support/testing/tests/package/test_flutter/overlay/usr/lib/systemd/system/flutter-markdown-example.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=flutter-markdown-example daemon
+After=dbus.service systemd-udevd.service
+
+[Service]
+ExecStart=/usr/bin/flutter-pi --release /usr/share/flutter/flutter_markdown_example/release/
+Restart=always
+KillMode=process
+
+[Install]
+WantedBy=multi-user.target
-- 
2.44.0

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

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

* [Buildroot] [PATCH v2 09/13] package/flutter-gallery: drop package
  2024-03-25 22:34 [Buildroot] [PATCH v2 01/13] package/flutter-packages/flutter-markdown-example: new package Adam Duskett
                   ` (6 preceding siblings ...)
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 08/13] support/testing/tests/package/test_flutter.py: use flutter-markdown-example Adam Duskett
@ 2024-03-25 22:34 ` Adam Duskett
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 10/13] package/flutter-pi: bump version to 783db32ec6441b878783bfa241777d3bfe6b35e2 Adam Duskett
                   ` (4 subsequent siblings)
  12 siblings, 0 replies; 17+ messages in thread
From: Adam Duskett @ 2024-03-25 22:34 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

The maintainers of the flutter-gallery package archived the project as of
February 16, 2024. In addition, the flutter-gallery package is incompatible
with Flutter 3.19.x. Now that the flutter tests do not use this package, it
is safe to drop it.

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

diff --git a/Config.in.legacy b/Config.in.legacy
index 1d3dc8b5c8..5967c1c5ca 100644
--- a/Config.in.legacy
+++ b/Config.in.legacy
@@ -146,6 +146,13 @@ endif
 
 comment "Legacy options removed in 2024.05"
 
+config BR2_PACKAGE_FLUTTER_GALLERY
+	bool "flutter-gallery removed"
+	select BR2_LEGACY
+	help
+	  flutter-gallery has been removed due to being abandoned
+	  and no longer working with flutter 3.19+
+
 config BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS
 	bool "Codescape IMG GNU Linux Toolchain 2018.09 has been removed"
 	select BR2_LEGACY
diff --git a/DEVELOPERS b/DEVELOPERS
index 38079407c5..df19e341b9 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -32,7 +32,6 @@ F:	package/dmenu-wayland/
 F:	package/fcft/
 F:	package/foot/
 F:	package/flutter-engine/
-F:	package/flutter-gallery/
 F:	package/flutter-packages/
 F:	package/flutter-packages/flutter-adaptive-scaffold-example/
 F:	package/flutter-packages/flutter-animations-example/
diff --git a/package/Config.in b/package/Config.in
index dfdc716857..410fe0f493 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -315,7 +315,6 @@ comment "Graphic applications"
 	source "package/cage/Config.in"
 	source "package/cog/Config.in"
 	source "package/dmenu-wayland/Config.in"
-	source "package/flutter-gallery/Config.in"
 	source "package/flutter-packages/Config.in"
 	source "package/flutter-pi/Config.in"
 	source "package/foot/Config.in"
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
deleted file mode 100644
index 224457ea6f..0000000000
--- a/package/flutter-gallery/Config.in
+++ /dev/null
@@ -1,16 +0,0 @@
-config BR2_PACKAGE_FLUTTER_GALLERY
-	bool "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
-	help
-	  Flutter Gallery is a resource to help developers evaluate
-	  and use Flutter. It is a collection of Material Design &
-	  Cupertino widgets, behaviors, and vignettes implemented
-	  with Flutter.
-
-	  https://github.com/flutter/gallery
-
-comment "flutter-gallery needs flutter-engine"
-	depends on BR2_PACKAGE_HOST_FLUTTER_SDK_BIN_ARCH_SUPPORTS
-	depends on !BR2_PACKAGE_FLUTTER_ENGINE
diff --git a/package/flutter-gallery/flutter-gallery.hash b/package/flutter-gallery/flutter-gallery.hash
deleted file mode 100644
index aea1ed39be..0000000000
--- a/package/flutter-gallery/flutter-gallery.hash
+++ /dev/null
@@ -1,3 +0,0 @@
-# Locally calculated
-sha256  14272aba90b7d26db33bac7b4692f0e3ed1a008286a08eaf2ea79abd478f23e9  flutter-gallery-2.10.2.tar.gz
-sha256  c731cf5a33db0e12647e0680ef0bc7839f99749404ac1ba4626cf7192065b3b0  LICENSE
diff --git a/package/flutter-gallery/flutter-gallery.mk b/package/flutter-gallery/flutter-gallery.mk
deleted file mode 100644
index acad706dae..0000000000
--- a/package/flutter-gallery/flutter-gallery.mk
+++ /dev/null
@@ -1,57 +0,0 @@
-################################################################################
-#
-# flutter-gallery
-#
-################################################################################
-
-FLUTTER_GALLERY_VERSION = 2.10.2
-FLUTTER_GALLERY_SITE = $(call github,flutter,gallery,v$(FLUTTER_GALLERY_VERSION))
-FLUTTER_GALLERY_LICENSE = BSD-3-Clause
-FLUTTER_GALLERY_LICENSE_FILES = LICENSE
-FLUTTER_GALLERY_DEPENDENCIES = \
-	host-flutter-sdk-bin \
-	flutter-engine
-
-FLUTTER_GALLERY_INSTALL_DIR = $(TARGET_DIR)/usr/share/flutter/gallery/$(FLUTTER_ENGINE_RUNTIME_MODE)
-
-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) 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) \
-			-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
-endef
-
-define FLUTTER_GALLERY_INSTALL_TARGET_CMDS
-	mkdir -p $(FLUTTER_GALLERY_INSTALL_DIR)/{data,lib}
-	cp -dprf $(@D)/build/flutter_assets $(FLUTTER_GALLERY_INSTALL_DIR)/data/
-
-	$(INSTALL) -D -m 0755 $(@D)/libapp.so \
-		$(FLUTTER_GALLERY_INSTALL_DIR)/lib/libapp.so
-
-	ln -sf /usr/share/flutter/$(FLUTTER_ENGINE_RUNTIME_MODE)/data/icudtl.dat \
-	$(FLUTTER_GALLERY_INSTALL_DIR)/data/
-
-	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.44.0

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

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

* [Buildroot] [PATCH v2 10/13] package/flutter-pi: bump version to 783db32ec6441b878783bfa241777d3bfe6b35e2
  2024-03-25 22:34 [Buildroot] [PATCH v2 01/13] package/flutter-packages/flutter-markdown-example: new package Adam Duskett
                   ` (7 preceding siblings ...)
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 09/13] package/flutter-gallery: drop package Adam Duskett
@ 2024-03-25 22:34 ` Adam Duskett
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 11/13] package/flutter-sdk-bin: bump version to 3.19.4 Adam Duskett
                   ` (3 subsequent siblings)
  12 siblings, 0 replies; 17+ messages in thread
From: Adam Duskett @ 2024-03-25 22:34 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 df47d666bd..956827a5b3 100644
--- a/package/flutter-pi/flutter-pi.hash
+++ b/package/flutter-pi/flutter-pi.hash
@@ -1,3 +1,3 @@
 # Locally calculated
-sha256  6b11f260567a4589915cf29ce2ffa62b6f80414242a65c616f01983ae3a177b7  flutter-pi-75e72fef8e8ce65ec72a002c00d9c6db4d1479d3-br1.tar.gz
+sha256  4ab2ae849d46261fe22ed94eae5726841d34119a5656e85b26c7c8802050d14c  flutter-pi-783db32ec6441b878783bfa241777d3bfe6b35e2-br1.tar.gz
 sha256  b34df9d3e1b4e5d1ba70b1740ec74b69f1189b44efd0c96b898b074ef8db1c70  LICENSE
diff --git a/package/flutter-pi/flutter-pi.mk b/package/flutter-pi/flutter-pi.mk
index 9edc62e7ac..ee54a2bf4e 100644
--- a/package/flutter-pi/flutter-pi.mk
+++ b/package/flutter-pi/flutter-pi.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-FLUTTER_PI_VERSION = 75e72fef8e8ce65ec72a002c00d9c6db4d1479d3
+FLUTTER_PI_VERSION = 783db32ec6441b878783bfa241777d3bfe6b35e2
 FLUTTER_PI_SITE = https://github.com/ardera/flutter-pi.git
 FLUTTER_PI_SITE_METHOD = git
 FLUTTER_PI_LICENSE = MIT
-- 
2.44.0

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

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

* [Buildroot] [PATCH v2 11/13] package/flutter-sdk-bin: bump version to 3.19.4
  2024-03-25 22:34 [Buildroot] [PATCH v2 01/13] package/flutter-packages/flutter-markdown-example: new package Adam Duskett
                   ` (8 preceding siblings ...)
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 10/13] package/flutter-pi: bump version to 783db32ec6441b878783bfa241777d3bfe6b35e2 Adam Duskett
@ 2024-03-25 22:34 ` Adam Duskett
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 12/13] package/flutter-engine: " Adam Duskett
                   ` (2 subsequent siblings)
  12 siblings, 0 replies; 17+ messages in thread
From: Adam Duskett @ 2024-03-25 22:34 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 48c9c7d7e3..1102c50cc6 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  7cb12032cf615a92a7bc9042100f3f2af62df7df3ca3bee27f4b153fe218b239  flutter_linux_3.16.8-stable.tar.xz
+sha256  66adfe6b6559a2e2f1fdbf89c938d0af53add3860c854c79dbbd5452f5d2290a  flutter_linux_3.19.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 0d9a44596d..f8453c3090 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.8
+FLUTTER_SDK_BIN_VERSION = 3.19.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
-- 
2.44.0

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

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

* [Buildroot] [PATCH v2 12/13] package/flutter-engine: bump version to 3.19.4
  2024-03-25 22:34 [Buildroot] [PATCH v2 01/13] package/flutter-packages/flutter-markdown-example: new package Adam Duskett
                   ` (9 preceding siblings ...)
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 11/13] package/flutter-sdk-bin: bump version to 3.19.4 Adam Duskett
@ 2024-03-25 22:34 ` Adam Duskett
  2024-03-25 23:46   ` Arnout Vandecappelle via buildroot
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 13/13] package/flutter-packages: bump version to 611aea1657fbfc0d2564a14b08e12dffc70189bb Adam Duskett
  2024-03-25 23:25 ` [Buildroot] [PATCH v2 01/13] package/flutter-packages/flutter-markdown-example: new package Arnout Vandecappelle via buildroot
  12 siblings, 1 reply; 17+ messages in thread
From: Adam Duskett @ 2024-03-25 22:34 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

Add 0005-skip-configuration-dependency-if-unit-tests-are-disa.patch, which
fixes gtk+-3.0 being an unconditional requirement.

Other changes:
Flutter 3.19.x made Wayland and X11 an unconditional requirement, resulting in
the following errors when compiling:

"""
../../flutter/third_party/swiftshader/src/WSI/libWaylandClient.hpp:18:10: fatal error: 'wayland-client.h' file not found
   18 | #include <wayland-client.h>
      |          ^~~~~~~~~~~~~~~~~~

../../flutter/third_party/swiftshader/src/WSI/WaylandSurfaceKHR.cpp:15:
../../flutter/third_party/swiftshader/src/WSI/WaylandSurfaceKHR.hpp:22:10: fatal error: 'wayland-client.h' file not found
   22 | #include <wayland-client.h>
      |          ^~~~~~~~~~~~~~~~~~
1 error generated.
[1369/11229] CC obj/flutter/third_party/sqlite/sqlite.sqlite3.o
"""

After raising an issue found here:
https://github.com/flutter/flutter/issues/144635 and after several hours of
searching, the problem is https://github.com/flutter/buildroot/commit/d01da2716
which hardcodes the following values if building for a Linux platform:
  - ozone_platform_x11 = true
  - ozone_platform_wayland = true

As upstream maintainers listed the above as low priority (P3), a simple fix is
to add two additional sed calls in FLUTTER_ENGINE_VULKAN_X11_SUPPORT_FIXUP and
FLUTTER_ENGINE_VULKAN_WAYLAND_SUPPORT_FIXUP which set ozone_platform_x11 and
ozone_platform_wayland to the appropriate values.

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
 ...on-dependency-if-unit-tests-are-disa.patch | 32 +++++++++++++++++++
 package/flutter-engine/flutter-engine.mk      |  8 ++++-
 2 files changed, 39 insertions(+), 1 deletion(-)
 create mode 100644 package/flutter-engine/0005-skip-configuration-dependency-if-unit-tests-are-disa.patch

diff --git a/package/flutter-engine/0005-skip-configuration-dependency-if-unit-tests-are-disa.patch b/package/flutter-engine/0005-skip-configuration-dependency-if-unit-tests-are-disa.patch
new file mode 100644
index 0000000000..125bfc6910
--- /dev/null
+++ b/package/flutter-engine/0005-skip-configuration-dependency-if-unit-tests-are-disa.patch
@@ -0,0 +1,32 @@
+From 2252a85e59669b5826019f60a98b7a69939dacfd Mon Sep 17 00:00:00 2001
+From: Greg Spencer <gspencer@google.com>
+Date: Mon, 4 Mar 2024 12:30:41 -0800
+Subject: [PATCH] Skip configuration dependency if unit tests are disabled.
+
+Commit 88baf62f made gtk+-3.0 an unconditional requirement, see:
+
+Issue: https://github.com/flutter/flutter/issues/144421
+Upstream: Merged. https://github.com/flutter/engine/pull/51179
+
+Signed-off-by: Greg Spencer <gspencer@google.com>
+Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
+---
+ flutter/testing/BUILD.gn | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/flutter/testing/BUILD.gn b/flutter/testing/BUILD.gn
+index 9eac29452..a7d094695 100644
+--- a/flutter/testing/BUILD.gn
++++ b/flutter/testing/BUILD.gn
+@@ -51,7 +51,7 @@ source_set("testing") {
+ 
+   sources = [ "run_all_unittests.cc" ]
+ 
+-  if (is_linux) {
++  if (enable_unittests && is_linux) {
+     # So that we can call gtk_init in main().
+     configs += [ "//flutter/shell/platform/linux/config:gtk" ]
+   }
+-- 
+2.44.0
+
diff --git a/package/flutter-engine/flutter-engine.mk b/package/flutter-engine/flutter-engine.mk
index d08274f546..ff21e0949d 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.8
+FLUTTER_ENGINE_VERSION = 3.19.4
 
 # There is nothing for Buildroot to download. This is handled by gclient.
 FLUTTER_ENGINE_SITE =
@@ -154,6 +154,9 @@ else
 define FLUTTER_ENGINE_VULKAN_X11_SUPPORT_FIXUP
 	$(SED) "s%vulkan_use_x11.*%vulkan_use_x11 = false%g" -i \
 		$(@D)/build_overrides/vulkan_headers.gni
+
+	$(SED) "s%ozone_platform_x11.*%ozone_platform_x11 = false%g" \
+		$(@D)/build/config/BUILDCONFIG.gn
 endef
 FLUTTER_ENGINE_PRE_CONFIGURE_HOOKS += FLUTTER_ENGINE_VULKAN_X11_SUPPORT_FIXUP
 endif
@@ -164,6 +167,9 @@ else
 define FLUTTER_ENGINE_VULKAN_WAYLAND_SUPPORT_FIXUP
 	$(SED) "s%vulkan_use_wayland.*%vulkan_use_wayland = false%g" \
 		$(@D)/build_overrides/vulkan_headers.gni
+
+	$(SED) "s%ozone_platform_wayland.*%ozone_platform_wayland = false%g" \
+		$(@D)/build/config/BUILDCONFIG.gn
 endef
 FLUTTER_ENGINE_PRE_CONFIGURE_HOOKS += FLUTTER_ENGINE_VULKAN_WAYLAND_SUPPORT_FIXUP
 endif
-- 
2.44.0

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

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

* [Buildroot] [PATCH v2 13/13] package/flutter-packages: bump version to 611aea1657fbfc0d2564a14b08e12dffc70189bb
  2024-03-25 22:34 [Buildroot] [PATCH v2 01/13] package/flutter-packages/flutter-markdown-example: new package Adam Duskett
                   ` (10 preceding siblings ...)
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 12/13] package/flutter-engine: " Adam Duskett
@ 2024-03-25 22:34 ` Adam Duskett
  2024-03-25 23:24   ` Arnout Vandecappelle via buildroot
  2024-03-25 23:25 ` [Buildroot] [PATCH v2 01/13] package/flutter-packages/flutter-markdown-example: new package Arnout Vandecappelle via buildroot
  12 siblings, 1 reply; 17+ messages in thread
From: Adam Duskett @ 2024-03-25 22:34 UTC (permalink / raw)
  To: buildroot; +Cc: Adam Duskett

Now that flutter-engine is 3.19.x, it is safe to bump flutter-packages to
the latest commit.

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

diff --git a/package/flutter-packages/flutter-packages.hash b/package/flutter-packages/flutter-packages.hash
index 994434e25c..eac58e608f 100644
--- a/package/flutter-packages/flutter-packages.hash
+++ b/package/flutter-packages/flutter-packages.hash
@@ -1,3 +1,3 @@
 # Locally calculated
-sha256  8276276e050c1ea45787f74b0f8c915b8cf2162b6af8537ffa9886bd423f2828  flutter-packages-947e34ce9fedcdd6750b54eb1cc74b854b49ab48-br1.tar.gz
+sha256  a42e39a920d72183119b0e0bb7399513369a2aa7472f25da57ae95aad32e022b  flutter-packages-611aea1657fbfc0d2564a14b08e12dffc70189bb-br1.tar.gz
 sha256  89519eca6f7b9529b35bdddd623a58c3af06a88c458dbd6531ddb4675acf75a9  LICENSE
diff --git a/package/flutter-packages/flutter-packages.mk b/package/flutter-packages/flutter-packages.mk
index 4beaa39325..ef29e0aa98 100644
--- a/package/flutter-packages/flutter-packages.mk
+++ b/package/flutter-packages/flutter-packages.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-FLUTTER_PACKAGES_VERSION = 947e34ce9fedcdd6750b54eb1cc74b854b49ab48
+FLUTTER_PACKAGES_VERSION = 611aea1657fbfc0d2564a14b08e12dffc70189bb
 FLUTTER_PACKAGES_SITE = $(call github,flutter,packages,$(FLUTTER_PACKAGES_VERSION))
 FLUTTER_PACKAGES_LICENSE = BSD-3-Clause
 FLUTTER_PACKAGES_LICENSE_FILES = LICENSE
-- 
2.44.0

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

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

* Re: [Buildroot] [PATCH v2 07/13] package/flutter-packages/flutter-rfw-local-example: new package
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 07/13] package/flutter-packages/flutter-rfw-local-example: " Adam Duskett
@ 2024-03-25 23:05   ` Arnout Vandecappelle via buildroot
  0 siblings, 0 replies; 17+ messages in thread
From: Arnout Vandecappelle via buildroot @ 2024-03-25 23:05 UTC (permalink / raw)
  To: Adam Duskett, buildroot



On 25/03/2024 23:34, Adam Duskett wrote:
> Displays a custom "Hello, World!" custom widget in a
> remote Flutter widget (RFW) for use by a remote widget.
> 
> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
> ---
[snip]
> diff --git a/package/flutter-packages/flutter-rfw-local-example/flutter-rfw-local-example.mk b/package/flutter-packages/flutter-rfw-local-example/flutter-rfw-local-example.mk
> new file mode 100644
> index 0000000000..b57c021f8b
> --- /dev/null
> +++ b/package/flutter-packages/flutter-rfw-local-example/flutter-rfw-local-example.mk
> @@ -0,0 +1,54 @@
> +################################################################################
> +#
> +# flutter-rfw-local-example
> +#
> +################################################################################
> +
> +FLUTTER_RFW_LOCAL_EXAMPLE_VERSION = $(FLUTTER_PACKAGES_VERSION)
> +FLUTTER_RFW_LOCAL_EXAMPLE_SITE = $(FLUTTER_PACKAGES_SITE)
> +FLUTTER_RFW_LOCAL_EXAMPLE_SITE_METHOD = $(FLUTTER_PACKAGES_SITE_METHOD)
> +FLUTTER_RFW_LOCAL_EXAMPLE_SOURCE = $(FLUTTER_PACKAGES_SOURCE)
> +FLUTTER_RFW_LOCAL_EXAMPLE_LICENSE = $(FLUTTER_PACKAGES_LICENSE)
> +FLUTTER_RFW_LOCAL_EXAMPLE_LICENSE_FILES = $(FLUTTER_PACKAGES_LICENSE_FILES)
> +FLUTTER_RFW_LOCAL_EXAMPLE_DL_SUBDIR = $(FLUTTER_PACKAGES_DL_SUBDIR)
> +FLUTTER_RFW_LOCAL_EXAMPLE_DEPENDENCIES = $(FLUTTER_PACKAGES_DEPENDENCIES)
> +FLUTTER_RFW_LOCAL_EXAMPLE_PKG_NAME = local

  Why is this simply "local" instead of the more relevant (and consistent with 
the others) "flutter_rfw_local_example"?

  Regards,
  Arnout

> +FLUTTER_RFW_LOCAL_EXAMPLE_INSTALL_DIR = $(TARGET_DIR)/usr/share/flutter/rfw-$(FLUTTER_RFW_LOCAL_EXAMPLE_PKG_NAME)-example/$(FLUTTER_ENGINE_RUNTIME_MODE)
> +FLUTTER_RFW_LOCAL_EXAMPLE_SUBDIR = packages/rfw/example/local
> +
> +define FLUTTER_RFW_LOCAL_EXAMPLE_CONFIGURE_CMDS
> +	cd $(FLUTTER_RFW_LOCAL_EXAMPLE_BUILDDIR) && \
> +		$(HOST_FLUTTER_SDK_BIN_FLUTTER) clean && \
> +		$(HOST_FLUTTER_SDK_BIN_FLUTTER) pub get && \
> +		$(HOST_FLUTTER_SDK_BIN_FLUTTER) build bundle
> +endef
> +
> +define FLUTTER_RFW_LOCAL_EXAMPLE_BUILD_CMDS
> +	cd $(FLUTTER_RFW_LOCAL_EXAMPLE_BUILDDIR) && \
> +		$(HOST_FLUTTER_SDK_BIN_DART_BIN) \
> +			--native-assets $(FLUTTER_RFW_LOCAL_EXAMPLE_BUILDDIR)/.dart_tool/flutter_build/*/native_assets.yaml \
> +			package:$(FLUTTER_RFW_LOCAL_EXAMPLE_PKG_NAME)/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
> +endef
> +
> +define FLUTTER_RFW_LOCAL_EXAMPLE_INSTALL_TARGET_CMDS
> +	mkdir -p $(FLUTTER_RFW_LOCAL_EXAMPLE_INSTALL_DIR)/{data,lib}
> +	cp -dprf $(FLUTTER_RFW_LOCAL_EXAMPLE_BUILDDIR)/build/flutter_assets $(FLUTTER_RFW_LOCAL_EXAMPLE_INSTALL_DIR)/data/
> +
> +	$(INSTALL) -D -m 0755 $(FLUTTER_RFW_LOCAL_EXAMPLE_BUILDDIR)/libapp.so \
> +		$(FLUTTER_RFW_LOCAL_EXAMPLE_INSTALL_DIR)/lib/libapp.so
> +
> +	ln -sf /usr/share/flutter/$(FLUTTER_ENGINE_RUNTIME_MODE)/data/icudtl.dat \
> +	$(FLUTTER_RFW_LOCAL_EXAMPLE_INSTALL_DIR)/data/
> +
> +	ln -sf /usr/lib/libflutter_engine.so $(FLUTTER_RFW_LOCAL_EXAMPLE_INSTALL_DIR)/lib/
> +	$(RM) $(FLUTTER_RFW_LOCAL_EXAMPLE_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
> +	touch $(FLUTTER_RFW_LOCAL_EXAMPLE_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
> +endef
> +
> +$(eval $(generic-package))
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH v2 13/13] package/flutter-packages: bump version to 611aea1657fbfc0d2564a14b08e12dffc70189bb
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 13/13] package/flutter-packages: bump version to 611aea1657fbfc0d2564a14b08e12dffc70189bb Adam Duskett
@ 2024-03-25 23:24   ` Arnout Vandecappelle via buildroot
  0 siblings, 0 replies; 17+ messages in thread
From: Arnout Vandecappelle via buildroot @ 2024-03-25 23:24 UTC (permalink / raw)
  To: Adam Duskett, buildroot



On 25/03/2024 23:34, Adam Duskett wrote:
> Now that flutter-engine is 3.19.x, it is safe to bump flutter-packages to
> the latest commit.
> 
> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
> ---
>   package/flutter-packages/flutter-packages.hash | 2 +-
>   package/flutter-packages/flutter-packages.mk   | 2 +-
>   2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/package/flutter-packages/flutter-packages.hash b/package/flutter-packages/flutter-packages.hash
> index 994434e25c..eac58e608f 100644
> --- a/package/flutter-packages/flutter-packages.hash
> +++ b/package/flutter-packages/flutter-packages.hash
> @@ -1,3 +1,3 @@
>   # Locally calculated
> -sha256  8276276e050c1ea45787f74b0f8c915b8cf2162b6af8537ffa9886bd423f2828  flutter-packages-947e34ce9fedcdd6750b54eb1cc74b854b49ab48-br1.tar.gz
> +sha256  a42e39a920d72183119b0e0bb7399513369a2aa7472f25da57ae95aad32e022b  flutter-packages-611aea1657fbfc0d2564a14b08e12dffc70189bb-br1.tar.gz

  Not sure what went wrong here...

ERROR: while checking hashes from 
package/flutter-packages/flutter-markdown-example/flutter-markdown-example.hash
ERROR: flutter-packages-611aea1657fbfc0d2564a14b08e12dffc70189bb-br1.tar.gz has 
wrong sha256 hash:
ERROR: expected: a42e39a920d72183119b0e0bb7399513369a2aa7472f25da57ae95aad32e022b
ERROR: got     : 9f9c0d1492cb52719eccd06231115dd72d2e4f0cb74db62e38aae6e66d1f8d44
ERROR: Incomplete download, or man-in-the-middle (MITM) attack


  Perhaps the directory changed? In my downloaded tarball, it's under
packages-611aea1657fbfc0d2564a14b08e12dffc70189bb/

  Regards,
  Arnout

>   sha256  89519eca6f7b9529b35bdddd623a58c3af06a88c458dbd6531ddb4675acf75a9  LICENSE
> diff --git a/package/flutter-packages/flutter-packages.mk b/package/flutter-packages/flutter-packages.mk
> index 4beaa39325..ef29e0aa98 100644
> --- a/package/flutter-packages/flutter-packages.mk
> +++ b/package/flutter-packages/flutter-packages.mk
> @@ -4,7 +4,7 @@
>   #
>   ################################################################################
>   
> -FLUTTER_PACKAGES_VERSION = 947e34ce9fedcdd6750b54eb1cc74b854b49ab48
> +FLUTTER_PACKAGES_VERSION = 611aea1657fbfc0d2564a14b08e12dffc70189bb
>   FLUTTER_PACKAGES_SITE = $(call github,flutter,packages,$(FLUTTER_PACKAGES_VERSION))
>   FLUTTER_PACKAGES_LICENSE = BSD-3-Clause
>   FLUTTER_PACKAGES_LICENSE_FILES = LICENSE
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH v2 01/13] package/flutter-packages/flutter-markdown-example: new package
  2024-03-25 22:34 [Buildroot] [PATCH v2 01/13] package/flutter-packages/flutter-markdown-example: new package Adam Duskett
                   ` (11 preceding siblings ...)
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 13/13] package/flutter-packages: bump version to 611aea1657fbfc0d2564a14b08e12dffc70189bb Adam Duskett
@ 2024-03-25 23:25 ` Arnout Vandecappelle via buildroot
  12 siblings, 0 replies; 17+ messages in thread
From: Arnout Vandecappelle via buildroot @ 2024-03-25 23:25 UTC (permalink / raw)
  To: Adam Duskett, buildroot



On 25/03/2024 23:34, Adam Duskett wrote:
> The maintainers of the flutter-gallery package archived the project as of
> February 16, 2024, necessitating a new reference package for users to port
> their Flutter applications to Buildroot. The flutter-packages repository is
> the perfect candidate for a reference package for several reasons:
>    - It contains the source code for Flutter's first-party packages.
>    - Many of the packages contain examples.
>    - Many of the examples include Linux-specific examples.
>    - The repository is updated regularly and often automatically, ensuring
>      compatibility with the latest versions of Flutter.
> 
> However, the layout of the flutter-packages repository stores all of the
> examples in sub-directories, which creates an organizational problem; either
> every example application is stored in packages/flutter-example-${name}, with
> the version, site, site_method, license, license_files, and dependencies of
> each package independent from each other, or, each example application is in a
> sub-directory of the flutter-packages directory, and flutter-packages acts as
> the primary source of the above variables.
> 
> As option one is a nightmare to maintain, this patch provides option two,
> which only necessitates the use of two features rarely used together in
> Buildroot: $(PKG_NAME)_DL_SUBDIR and $(PKG_NAME)_SOURCE. With these two options
> appropriately set, each sub-package uses the flutter-packages source tarball,
> which downloads once, saving time, disk space, bandwidth, and future
> maintenance headaches.
> 
> Three variables in the .mk file help with subsequent patches that add more
> example applications:
>    - FLUTTER_MARKDOWN_EXAMPLE_PKG_NAME:
>      - Set to the name of the application.
> 
>    - FLUTTER_MARKDOWN_EXAMPLE_INSTALL_DIR:
>      - It uses the PKG_NAME variable to set the installation directory.
> 
>    - FLUTTER_MARKDOWN_EXAMPLE_SUBDIR:
>      - Provides the directory in which to build the package.
> 
> With the above variables, adding subsequent packages involves minimal effort:
>    - Copy, paste, and rename a sub-directory to a new package name.
>    - Set the above variables to new names and directories.
>    - Check to see if there are any new build commands, such as specifying a
>      dart_plugin_registrant.dart file.
> 
> Another option that seems appealing is to have a single package, with the
> Config.in options to select which example(s) to build. However, this option
> does not work well for two reasons:
> 
>    - The logic between this package and the flutter-gallery package it replaces
>      would be very different. As the flutter-gallery package acts as a reference
>      package for other users, changing the logic would make the package difficult
>      to parse and possibly useless for other users to use as a reference when
>      porting their Flutter-based applications to Buildroot.
> 
>    - Not all packages in the flutter-package repository use the same directory
>      structure. Take, for example, the flutter-rfw-local-example. The build
>      directory is located at rfw/example/local, whereas most other packages are
>      at ${pkg_name}/example, which makes a pure-foreach loop impossible.
> 
> These packages are intended for reference, and changing the logic instead of
> using the same would hinder users from attempting to port their Flutter
> applications to Buildroot. As such, this option is ruled out for the above
> reasons.

  Again, excellent explanation!

  Series applied to master, except for the last patch, as commented separately.

  Regards,
  Arnout

> 
> The first package in this series is a Markdown example application that
> displays several Markdown formatting demos. However, it does not support inline
> HTML. This package also lacks a dart_plugin_registrant file, and unlike the
> flutter-gallery package, the lines referencing such a file are not included in
> the build commands. This is not a problem, but is something to note.
> 
> Also, the `FLUTTER_RUNTIME_MODES=$(FLUTTER_ENGINE_RUNTIME_MODE)` line from the
> configure commands is not copied from the flutter-gallery package, as it was
> included by mistake and did not have any effecton the clean command.
> 
> Note: The version of the flutter-packages git hash is set to
> 947e34ce9fedcdd6750b54eb1cc74b854b49ab48, the last commit that supported
> Flutter 3.16.x. Newer versions require Flutter 3.19.x
> 
> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
> ---
> v1 -> v2:
>    - Use SUBDIR and BUILDDIR [Arnout]
>    - Expand the commit message [Arnout]
>    - Use the github helper [Arnout]
> 
>   DEVELOPERS                                    |  2 +
>   package/Config.in                             |  1 +
>   package/flutter-packages/Config.in            | 15 ++++++
>   .../flutter-markdown-example/Config.in        |  7 +++
>   .../flutter-markdown-example.hash             |  1 +
>   .../flutter-markdown-example.mk               | 54 +++++++++++++++++++
>   .../flutter-packages/flutter-packages.hash    |  3 ++
>   package/flutter-packages/flutter-packages.mk  | 17 ++++++
>   8 files changed, 100 insertions(+)
>   create mode 100644 package/flutter-packages/Config.in
>   create mode 100644 package/flutter-packages/flutter-markdown-example/Config.in
>   create mode 120000 package/flutter-packages/flutter-markdown-example/flutter-markdown-example.hash
>   create mode 100644 package/flutter-packages/flutter-markdown-example/flutter-markdown-example.mk
>   create mode 100644 package/flutter-packages/flutter-packages.hash
>   create mode 100644 package/flutter-packages/flutter-packages.mk
> 
> diff --git a/DEVELOPERS b/DEVELOPERS
> index cb2132e67a..8b487b04f3 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -33,6 +33,8 @@ F:	package/fcft/
>   F:	package/foot/
>   F:	package/flutter-engine/
>   F:	package/flutter-gallery/
> +F:	package/flutter-packages/
> +F:	package/flutter-packages/flutter-markdown-example/
>   F:	package/flutter-pi/
>   F:	package/flutter-sdk-bin/
>   F:	package/ivi-homescreen/
> diff --git a/package/Config.in b/package/Config.in
> index 1a62bfb1be..dfdc716857 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -316,6 +316,7 @@ comment "Graphic applications"
>   	source "package/cog/Config.in"
>   	source "package/dmenu-wayland/Config.in"
>   	source "package/flutter-gallery/Config.in"
> +	source "package/flutter-packages/Config.in"
>   	source "package/flutter-pi/Config.in"
>   	source "package/foot/Config.in"
>   	source "package/fswebcam/Config.in"
> diff --git a/package/flutter-packages/Config.in b/package/flutter-packages/Config.in
> new file mode 100644
> index 0000000000..7cedf7c473
> --- /dev/null
> +++ b/package/flutter-packages/Config.in
> @@ -0,0 +1,15 @@
> +menuconfig BR2_PACKAGE_FLUTTER_PACKAGES
> +	bool "flutter packages"
> +	depends on BR2_PACKAGE_HOST_FLUTTER_SDK_BIN_ARCH_SUPPORTS
> +	depends on BR2_PACKAGE_FLUTTER_ENGINE
> +	select BR2_PACKAGE_HOST_FLUTTER_SDK_BIN
> +	help
> +	  First-party Flutter package examples.
> +
> +if BR2_PACKAGE_FLUTTER_PACKAGES
> +source "package/flutter-packages/flutter-markdown-example/Config.in"
> +endif
> +
> +comment "flutter packages need flutter-engine"
> +	depends on BR2_PACKAGE_HOST_FLUTTER_SDK_BIN_ARCH_SUPPORTS
> +	depends on !BR2_PACKAGE_FLUTTER_ENGINE
> diff --git a/package/flutter-packages/flutter-markdown-example/Config.in b/package/flutter-packages/flutter-markdown-example/Config.in
> new file mode 100644
> index 0000000000..939b21053c
> --- /dev/null
> +++ b/package/flutter-packages/flutter-markdown-example/Config.in
> @@ -0,0 +1,7 @@
> +config BR2_PACKAGE_FLUTTER_MARKDOWN_EXAMPLE
> +	bool "flutter markdown example"
> +	help
> +	  A markdown renderer for Flutter. It supports the original
> +	  format, but no inline HTML.
> +
> +	  https://github.com/flutter/packages/tree/main/packages/flutter_markdown
> diff --git a/package/flutter-packages/flutter-markdown-example/flutter-markdown-example.hash b/package/flutter-packages/flutter-markdown-example/flutter-markdown-example.hash
> new file mode 120000
> index 0000000000..879f2adb39
> --- /dev/null
> +++ b/package/flutter-packages/flutter-markdown-example/flutter-markdown-example.hash
> @@ -0,0 +1 @@
> +../flutter-packages.hash
> \ No newline at end of file
> diff --git a/package/flutter-packages/flutter-markdown-example/flutter-markdown-example.mk b/package/flutter-packages/flutter-markdown-example/flutter-markdown-example.mk
> new file mode 100644
> index 0000000000..eb6792fb02
> --- /dev/null
> +++ b/package/flutter-packages/flutter-markdown-example/flutter-markdown-example.mk
> @@ -0,0 +1,54 @@
> +################################################################################
> +#
> +# flutter-markdown-example
> +#
> +################################################################################
> +
> +FLUTTER_MARKDOWN_EXAMPLE_VERSION = $(FLUTTER_PACKAGES_VERSION)
> +FLUTTER_MARKDOWN_EXAMPLE_SITE = $(FLUTTER_PACKAGES_SITE)
> +FLUTTER_MARKDOWN_EXAMPLE_SITE_METHOD = $(FLUTTER_PACKAGES_SITE_METHOD)
> +FLUTTER_MARKDOWN_EXAMPLE_SOURCE = $(FLUTTER_PACKAGES_SOURCE)
> +FLUTTER_MARKDOWN_EXAMPLE_LICENSE = $(FLUTTER_PACKAGES_LICENSE)
> +FLUTTER_MARKDOWN_EXAMPLE_LICENSE_FILES = $(FLUTTER_PACKAGES_LICENSE_FILES)
> +FLUTTER_MARKDOWN_EXAMPLE_DL_SUBDIR = $(FLUTTER_PACKAGES_DL_SUBDIR)
> +FLUTTER_MARKDOWN_EXAMPLE_DEPENDENCIES = $(FLUTTER_PACKAGES_DEPENDENCIES)
> +FLUTTER_MARKDOWN_EXAMPLE_PKG_NAME = flutter_markdown_example
> +FLUTTER_MARKDOWN_EXAMPLE_INSTALL_DIR = $(TARGET_DIR)/usr/share/flutter/$(FLUTTER_MARKDOWN_EXAMPLE_PKG_NAME)/$(FLUTTER_ENGINE_RUNTIME_MODE)
> +FLUTTER_MARKDOWN_EXAMPLE_SUBDIR = packages/flutter_markdown/example
> +
> +define FLUTTER_MARKDOWN_EXAMPLE_CONFIGURE_CMDS
> +	cd $(FLUTTER_MARKDOWN_EXAMPLE_BUILDDIR) && \
> +		$(HOST_FLUTTER_SDK_BIN_FLUTTER) clean && \
> +		$(HOST_FLUTTER_SDK_BIN_FLUTTER) pub get && \
> +		$(HOST_FLUTTER_SDK_BIN_FLUTTER) build bundle
> +endef
> +
> +define FLUTTER_MARKDOWN_EXAMPLE_BUILD_CMDS
> +	cd $(FLUTTER_MARKDOWN_EXAMPLE_BUILDDIR) && \
> +		$(HOST_FLUTTER_SDK_BIN_DART_BIN) \
> +			--native-assets $(FLUTTER_MARKDOWN_EXAMPLE_BUILDDIR)/.dart_tool/flutter_build/*/native_assets.yaml \
> +			package:$(FLUTTER_MARKDOWN_EXAMPLE_PKG_NAME)/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
> +endef
> +
> +define FLUTTER_MARKDOWN_EXAMPLE_INSTALL_TARGET_CMDS
> +	mkdir -p $(FLUTTER_MARKDOWN_EXAMPLE_INSTALL_DIR)/{data,lib}
> +	cp -dprf $(FLUTTER_MARKDOWN_EXAMPLE_BUILDDIR)/build/flutter_assets $(FLUTTER_MARKDOWN_EXAMPLE_INSTALL_DIR)/data/
> +
> +	$(INSTALL) -D -m 0755 $(FLUTTER_MARKDOWN_EXAMPLE_BUILDDIR)/libapp.so \
> +		$(FLUTTER_MARKDOWN_EXAMPLE_INSTALL_DIR)/lib/libapp.so
> +
> +	ln -sf /usr/share/flutter/$(FLUTTER_ENGINE_RUNTIME_MODE)/data/icudtl.dat \
> +	$(FLUTTER_MARKDOWN_EXAMPLE_INSTALL_DIR)/data/
> +
> +	ln -sf /usr/lib/libflutter_engine.so $(FLUTTER_MARKDOWN_EXAMPLE_INSTALL_DIR)/lib/
> +	$(RM) $(FLUTTER_MARKDOWN_EXAMPLE_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
> +	touch $(FLUTTER_MARKDOWN_EXAMPLE_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
> +endef
> +
> +$(eval $(generic-package))
> diff --git a/package/flutter-packages/flutter-packages.hash b/package/flutter-packages/flutter-packages.hash
> new file mode 100644
> index 0000000000..994434e25c
> --- /dev/null
> +++ b/package/flutter-packages/flutter-packages.hash
> @@ -0,0 +1,3 @@
> +# Locally calculated
> +sha256  8276276e050c1ea45787f74b0f8c915b8cf2162b6af8537ffa9886bd423f2828  flutter-packages-947e34ce9fedcdd6750b54eb1cc74b854b49ab48-br1.tar.gz
> +sha256  89519eca6f7b9529b35bdddd623a58c3af06a88c458dbd6531ddb4675acf75a9  LICENSE
> diff --git a/package/flutter-packages/flutter-packages.mk b/package/flutter-packages/flutter-packages.mk
> new file mode 100644
> index 0000000000..4beaa39325
> --- /dev/null
> +++ b/package/flutter-packages/flutter-packages.mk
> @@ -0,0 +1,17 @@
> +################################################################################
> +#
> +# flutter-packages
> +#
> +################################################################################
> +
> +FLUTTER_PACKAGES_VERSION = 947e34ce9fedcdd6750b54eb1cc74b854b49ab48
> +FLUTTER_PACKAGES_SITE = $(call github,flutter,packages,$(FLUTTER_PACKAGES_VERSION))
> +FLUTTER_PACKAGES_LICENSE = BSD-3-Clause
> +FLUTTER_PACKAGES_LICENSE_FILES = LICENSE
> +FLUTTER_PACKAGES_DL_SUBDIR = flutter-packages
> +FLUTTER_PACKAGES_SOURCE = flutter-packages-$(FLUTTER_PACKAGES_VERSION)-br1.tar.gz
> +FLUTTER_PACKAGES_DEPENDENCIES = \
> +	host-flutter-sdk-bin \
> +	flutter-engine
> +
> +include $(sort $(wildcard package/flutter-packages/*/*.mk))
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH v2 12/13] package/flutter-engine: bump version to 3.19.4
  2024-03-25 22:34 ` [Buildroot] [PATCH v2 12/13] package/flutter-engine: " Adam Duskett
@ 2024-03-25 23:46   ` Arnout Vandecappelle via buildroot
  0 siblings, 0 replies; 17+ messages in thread
From: Arnout Vandecappelle via buildroot @ 2024-03-25 23:46 UTC (permalink / raw)
  To: Adam Duskett, buildroot



On 25/03/2024 23:34, Adam Duskett wrote:
> Add 0005-skip-configuration-dependency-if-unit-tests-are-disa.patch, which
> fixes gtk+-3.0 being an unconditional requirement.
> 
> Other changes:
> Flutter 3.19.x made Wayland and X11 an unconditional requirement, resulting in
> the following errors when compiling:
> 
> """
> ../../flutter/third_party/swiftshader/src/WSI/libWaylandClient.hpp:18:10: fatal error: 'wayland-client.h' file not found
>     18 | #include <wayland-client.h>
>        |          ^~~~~~~~~~~~~~~~~~
> 
> ../../flutter/third_party/swiftshader/src/WSI/WaylandSurfaceKHR.cpp:15:
> ../../flutter/third_party/swiftshader/src/WSI/WaylandSurfaceKHR.hpp:22:10: fatal error: 'wayland-client.h' file not found
>     22 | #include <wayland-client.h>
>        |          ^~~~~~~~~~~~~~~~~~
> 1 error generated.
> [1369/11229] CC obj/flutter/third_party/sqlite/sqlite.sqlite3.o
> """
> 
> After raising an issue found here:
> https://github.com/flutter/flutter/issues/144635 and after several hours of
> searching, the problem is https://github.com/flutter/buildroot/commit/d01da2716
> which hardcodes the following values if building for a Linux platform:
>    - ozone_platform_x11 = true
>    - ozone_platform_wayland = true
> 
> As upstream maintainers listed the above as low priority (P3), a simple fix is
> to add two additional sed calls in FLUTTER_ENGINE_VULKAN_X11_SUPPORT_FIXUP and
> FLUTTER_ENGINE_VULKAN_WAYLAND_SUPPORT_FIXUP which set ozone_platform_x11 and
> ozone_platform_wayland to the appropriate values.
> 
> Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
> ---
>   ...on-dependency-if-unit-tests-are-disa.patch | 32 +++++++++++++++++++
>   package/flutter-engine/flutter-engine.mk      |  8 ++++-

  This version bump is fine, but it looks like flutter-engine doesn't have a 
hash file. The commit log that adds the package explains why - but that's not a 
reason not to have a hash file. THe hash file should still be there, just with 
"none" as hash. In particular, the license file should still be in the hash file.

  Regards,
  Arnout

>   2 files changed, 39 insertions(+), 1 deletion(-)
>   create mode 100644 package/flutter-engine/0005-skip-configuration-dependency-if-unit-tests-are-disa.patch
> 
> diff --git a/package/flutter-engine/0005-skip-configuration-dependency-if-unit-tests-are-disa.patch b/package/flutter-engine/0005-skip-configuration-dependency-if-unit-tests-are-disa.patch
> new file mode 100644
> index 0000000000..125bfc6910
> --- /dev/null
> +++ b/package/flutter-engine/0005-skip-configuration-dependency-if-unit-tests-are-disa.patch
> @@ -0,0 +1,32 @@
> +From 2252a85e59669b5826019f60a98b7a69939dacfd Mon Sep 17 00:00:00 2001
> +From: Greg Spencer <gspencer@google.com>
> +Date: Mon, 4 Mar 2024 12:30:41 -0800
> +Subject: [PATCH] Skip configuration dependency if unit tests are disabled.
> +
> +Commit 88baf62f made gtk+-3.0 an unconditional requirement, see:
> +
> +Issue: https://github.com/flutter/flutter/issues/144421
> +Upstream: Merged. https://github.com/flutter/engine/pull/51179
> +
> +Signed-off-by: Greg Spencer <gspencer@google.com>
> +Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
> +---
> + flutter/testing/BUILD.gn | 2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
> +
> +diff --git a/flutter/testing/BUILD.gn b/flutter/testing/BUILD.gn
> +index 9eac29452..a7d094695 100644
> +--- a/flutter/testing/BUILD.gn
> ++++ b/flutter/testing/BUILD.gn
> +@@ -51,7 +51,7 @@ source_set("testing") {
> +
> +   sources = [ "run_all_unittests.cc" ]
> +
> +-  if (is_linux) {
> ++  if (enable_unittests && is_linux) {
> +     # So that we can call gtk_init in main().
> +     configs += [ "//flutter/shell/platform/linux/config:gtk" ]
> +   }
> +--
> +2.44.0
> +
> diff --git a/package/flutter-engine/flutter-engine.mk b/package/flutter-engine/flutter-engine.mk
> index d08274f546..ff21e0949d 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.8
> +FLUTTER_ENGINE_VERSION = 3.19.4
>   
>   # There is nothing for Buildroot to download. This is handled by gclient.
>   FLUTTER_ENGINE_SITE =
> @@ -154,6 +154,9 @@ else
>   define FLUTTER_ENGINE_VULKAN_X11_SUPPORT_FIXUP
>   	$(SED) "s%vulkan_use_x11.*%vulkan_use_x11 = false%g" -i \
>   		$(@D)/build_overrides/vulkan_headers.gni
> +
> +	$(SED) "s%ozone_platform_x11.*%ozone_platform_x11 = false%g" \
> +		$(@D)/build/config/BUILDCONFIG.gn
>   endef
>   FLUTTER_ENGINE_PRE_CONFIGURE_HOOKS += FLUTTER_ENGINE_VULKAN_X11_SUPPORT_FIXUP
>   endif
> @@ -164,6 +167,9 @@ else
>   define FLUTTER_ENGINE_VULKAN_WAYLAND_SUPPORT_FIXUP
>   	$(SED) "s%vulkan_use_wayland.*%vulkan_use_wayland = false%g" \
>   		$(@D)/build_overrides/vulkan_headers.gni
> +
> +	$(SED) "s%ozone_platform_wayland.*%ozone_platform_wayland = false%g" \
> +		$(@D)/build/config/BUILDCONFIG.gn
>   endef
>   FLUTTER_ENGINE_PRE_CONFIGURE_HOOKS += FLUTTER_ENGINE_VULKAN_WAYLAND_SUPPORT_FIXUP
>   endif
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

end of thread, other threads:[~2024-03-25 23:46 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-03-25 22:34 [Buildroot] [PATCH v2 01/13] package/flutter-packages/flutter-markdown-example: new package Adam Duskett
2024-03-25 22:34 ` [Buildroot] [PATCH v2 02/13] package/flutter-packages/flutter-adaptive-scaffold-example: " Adam Duskett
2024-03-25 22:34 ` [Buildroot] [PATCH v2 03/13] package/flutter-packages/flutter-animations-example: " Adam Duskett
2024-03-25 22:34 ` [Buildroot] [PATCH v2 04/13] package/flutter-packages/flutter-dynamic-layouts-example: " Adam Duskett
2024-03-25 22:34 ` [Buildroot] [PATCH v2 05/13] package/flutter-packages/flutter-go-router-example: " Adam Duskett
2024-03-25 22:34 ` [Buildroot] [PATCH v2 06/13] package/flutter-packages/flutter-image-example: " Adam Duskett
2024-03-25 22:34 ` [Buildroot] [PATCH v2 07/13] package/flutter-packages/flutter-rfw-local-example: " Adam Duskett
2024-03-25 23:05   ` Arnout Vandecappelle via buildroot
2024-03-25 22:34 ` [Buildroot] [PATCH v2 08/13] support/testing/tests/package/test_flutter.py: use flutter-markdown-example Adam Duskett
2024-03-25 22:34 ` [Buildroot] [PATCH v2 09/13] package/flutter-gallery: drop package Adam Duskett
2024-03-25 22:34 ` [Buildroot] [PATCH v2 10/13] package/flutter-pi: bump version to 783db32ec6441b878783bfa241777d3bfe6b35e2 Adam Duskett
2024-03-25 22:34 ` [Buildroot] [PATCH v2 11/13] package/flutter-sdk-bin: bump version to 3.19.4 Adam Duskett
2024-03-25 22:34 ` [Buildroot] [PATCH v2 12/13] package/flutter-engine: " Adam Duskett
2024-03-25 23:46   ` Arnout Vandecappelle via buildroot
2024-03-25 22:34 ` [Buildroot] [PATCH v2 13/13] package/flutter-packages: bump version to 611aea1657fbfc0d2564a14b08e12dffc70189bb Adam Duskett
2024-03-25 23:24   ` Arnout Vandecappelle via buildroot
2024-03-25 23:25 ` [Buildroot] [PATCH v2 01/13] package/flutter-packages/flutter-markdown-example: new package Arnout Vandecappelle via buildroot

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.