flutter/build/fuchsia
Chinmay Garde 7907498ca2
Prepare buildroot for working with Fuchsia SDK defined targets. (#239)
This prepares the buildroot to stamp GN targets for Fuchsia SDK defined targets.

GN templates have been created in //build/fuchsia/fuchsia.gni that
can read the JSON metadata that describes the vended SDK.

GN targets that describe all known SDK parts (as described in the SDK
manifest) can be instantiated in one shot by defining a top level fuchsia_sdk
target. This stamping needs to happen once and can be done anywhere (currenly
in //build/fuchsia/BUILD.gn). Once stamped, targets that depend on
specific Fuchsia SDK parts need to explicitly depend on them by using the
name of that part. For example, depending on the :fuchsia.images part of the
SDK will generate headers for all fidl files in that part, compile any source
libraries and link the required dynamic libraries into the executable. Unlike regular
targets, this target does not exist in a GN file. The name must be looked up
from JSON manifest. This scheme seems to work well but is not resilient
to part name collision.

So that SDK and non-SDK Fuchsia builds may co-exist till the migration is done,
the is_fuchsia_sdk GN variable and FUCHSIA_SDK preprocessor defines are
set in all Fuchsia SDK builds. This allows code to target both variants. It is
the hope that the non SDK variant will be turned down and the Flutter team
assumes ownership of this component.
2019-04-30 14:36:43 -07:00
..
lib Copy lib/sys|vfs/cpp from Fuchsia into the buildroot. (#243) 2019-04-30 11:28:34 -07:00
vulkan/include/vulkan Copy Vulkan headers not currently vended by the Fuchsia SDK. (#240) 2019-04-30 11:59:26 -07:00
BUILD.gn Prepare buildroot for working with Fuchsia SDK defined targets. (#239) 2019-04-30 14:36:43 -07:00
fidl_gen_cpp.py Prepare buildroot for working with Fuchsia SDK defined targets. (#239) 2019-04-30 14:36:43 -07:00
fuchsia.gni Prepare buildroot for working with Fuchsia SDK defined targets. (#239) 2019-04-30 14:36:43 -07:00