package/flutter-engine: bump version to 3.19.4

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>
Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
This commit is contained in:
Adam Duskett 2024-03-25 16:34:23 -06:00 committed by Arnout Vandecappelle
parent 2f2af48e77
commit cc38dde357
2 changed files with 39 additions and 1 deletions

View File

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

View File

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