flutter-gallery.mk 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. ################################################################################
  2. #
  3. # flutter-gallery
  4. #
  5. ################################################################################
  6. FLUTTER_GALLERY_VERSION = 2.10.2
  7. FLUTTER_GALLERY_SITE = $(call github,flutter,gallery,v$(FLUTTER_GALLERY_VERSION))
  8. FLUTTER_GALLERY_LICENSE = BSD-3-Clause
  9. FLUTTER_GALLERY_LICENSE_FILES = LICENSE
  10. FLUTTER_GALLERY_DEPENDENCIES = \
  11. host-flutter-sdk-bin \
  12. flutter-engine
  13. FLUTTER_GALLERY_INSTALL_DIR = $(TARGET_DIR)/usr/share/flutter/gallery/$(FLUTTER_ENGINE_RUNTIME_MODE)
  14. define FLUTTER_GALLERY_CONFIGURE_CMDS
  15. cd $(@D) && \
  16. FLUTTER_RUNTIME_MODES=$(FLUTTER_ENGINE_RUNTIME_MODE) \
  17. $(HOST_FLUTTER_SDK_BIN_FLUTTER) clean && \
  18. $(HOST_FLUTTER_SDK_BIN_FLUTTER) pub get && \
  19. $(HOST_FLUTTER_SDK_BIN_FLUTTER) build bundle
  20. endef
  21. define FLUTTER_GALLERY_BUILD_CMDS
  22. cd $(@D) && \
  23. FLUTTER_RUNTIME_MODES=$(FLUTTER_ENGINE_RUNTIME_MODE) \
  24. $(HOST_FLUTTER_SDK_BIN_DART_BIN) \
  25. -Dflutter.dart_plugin_registrant=file://$(@D)/.dart_tool/flutter_build/dart_plugin_registrant.dart \
  26. --source file://$(@D)/.dart_tool/flutter_build/dart_plugin_registrant.dart \
  27. --source package:flutter/src/dart_plugin_registrant.dart \
  28. --native-assets $(@D)/.dart_tool/flutter_build/*/native_assets.yaml \
  29. package:gallery/main.dart && \
  30. $(HOST_FLUTTER_SDK_BIN_ENV) $(FLUTTER_ENGINE_GEN_SNAPSHOT) \
  31. --deterministic \
  32. --obfuscate \
  33. --snapshot_kind=app-aot-elf \
  34. --elf=libapp.so \
  35. .dart_tool/flutter_build/*/app.dill
  36. endef
  37. define FLUTTER_GALLERY_INSTALL_TARGET_CMDS
  38. mkdir -p $(FLUTTER_GALLERY_INSTALL_DIR)/{data,lib}
  39. cp -dprf $(@D)/build/flutter_assets $(FLUTTER_GALLERY_INSTALL_DIR)/data/
  40. $(INSTALL) -D -m 0755 $(@D)/libapp.so \
  41. $(FLUTTER_GALLERY_INSTALL_DIR)/lib/libapp.so
  42. ln -sf /usr/share/flutter/$(FLUTTER_ENGINE_RUNTIME_MODE)/data/icudtl.dat \
  43. $(FLUTTER_GALLERY_INSTALL_DIR)/data/
  44. ln -sf /usr/lib/libflutter_engine.so $(FLUTTER_GALLERY_INSTALL_DIR)/lib/
  45. $(RM) $(FLUTTER_GALLERY_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
  46. touch $(FLUTTER_GALLERY_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin
  47. endef
  48. $(eval $(generic-package))