|  | # Copyright 2016 The Fuchsia Authors. All rights reserved. | 
|  | # Use of this source code is governed by a BSD-style license that can be | 
|  | # found in the LICENSE file. | 
|  |  | 
|  | import("//build/package.gni") | 
|  | import("//src/lib/vulkan/layers.gni") | 
|  |  | 
|  | group("examples") { | 
|  | public_deps = [ | 
|  | ":bouncing_ball", | 
|  | ":direct_input", | 
|  | ":direct_input_child", | 
|  | ":embedder", | 
|  | ":frame-compression", | 
|  | ":pose_buffer_presenter", | 
|  | ":scenic_dev_app", | 
|  | ":shadertoy_client", | 
|  | ":shadertoy_service", | 
|  | ":simplest_app", | 
|  | ":simplest_embedder", | 
|  | ":spinning_square_view", | 
|  | ":standalone_app", | 
|  | ":tile_view", | 
|  | ":yuv_to_image_pipe", | 
|  | ] | 
|  | } | 
|  |  | 
|  | package("bouncing_ball") { | 
|  | deps = [ "bouncing_ball" ] | 
|  |  | 
|  | binaries = [ | 
|  | { | 
|  | name = "bouncing_ball" | 
|  | }, | 
|  | ] | 
|  | meta = [ | 
|  | { | 
|  | path = rebase_path("bouncing_ball/meta/bouncing_ball.cmx") | 
|  | dest = "bouncing_ball.cmx" | 
|  | }, | 
|  | ] | 
|  | } | 
|  |  | 
|  | package("embedder") { | 
|  | deps = [ | 
|  | "embedder", | 
|  | "embedder:subview", | 
|  | ] | 
|  |  | 
|  | binaries = [ | 
|  | { | 
|  | name = "embedder" | 
|  | }, | 
|  | { | 
|  | name = "subview" | 
|  | }, | 
|  | ] | 
|  |  | 
|  | meta = [ | 
|  | { | 
|  | path = rebase_path("embedder/meta/embedder.cmx") | 
|  | dest = "embedder.cmx" | 
|  | }, | 
|  | { | 
|  | path = rebase_path("embedder/meta/subview.cmx") | 
|  | dest = "subview.cmx" | 
|  | }, | 
|  | ] | 
|  | } | 
|  |  | 
|  | package("frame-compression") { | 
|  | deps = [ "frame-compression" ] | 
|  |  | 
|  | binaries = [ | 
|  | { | 
|  | name = "frame-compression" | 
|  | }, | 
|  | ] | 
|  | meta = [ | 
|  | { | 
|  | path = rebase_path("frame-compression/meta/frame-compression.cmx") | 
|  | dest = "frame-compression.cmx" | 
|  | }, | 
|  | ] | 
|  |  | 
|  | public_deps = vulkan_validation_layers.public_deps | 
|  | loadable_modules = vulkan_validation_layers.loadable_modules | 
|  | resources = vulkan_validation_layers.resources | 
|  | } | 
|  |  | 
|  | package("direct_input") { | 
|  | deps = [ "lab/direct_input" ] | 
|  |  | 
|  | binaries = [ | 
|  | { | 
|  | name = "direct_input" | 
|  | }, | 
|  | ] | 
|  | meta = [ | 
|  | { | 
|  | path = rebase_path("lab/direct_input/meta/direct_input.cmx") | 
|  | dest = "direct_input.cmx" | 
|  | }, | 
|  | ] | 
|  | } | 
|  |  | 
|  | package("direct_input_child") { | 
|  | deps = [ "lab/direct_input/child" ] | 
|  |  | 
|  | binaries = [ | 
|  | { | 
|  | name = "direct_input_child" | 
|  | }, | 
|  | ] | 
|  | meta = [ | 
|  | { | 
|  | path = rebase_path("lab/direct_input/meta/direct_input_child.cmx") | 
|  | dest = "direct_input_child.cmx" | 
|  | }, | 
|  | ] | 
|  | } | 
|  |  | 
|  | package("pose_buffer_presenter") { | 
|  | deps = [ "lab/pose_buffer_presenter" ] | 
|  |  | 
|  | binaries = [ | 
|  | { | 
|  | name = "pose_buffer_presenter" | 
|  | }, | 
|  | ] | 
|  | meta = [ | 
|  | { | 
|  | path = rebase_path("meta/pose_buffer_presenter.cmx") | 
|  | dest = "pose_buffer_presenter.cmx" | 
|  | }, | 
|  | ] | 
|  |  | 
|  | public_deps = vulkan_validation_layers.public_deps | 
|  | loadable_modules = vulkan_validation_layers.loadable_modules | 
|  | resources = vulkan_validation_layers.resources | 
|  | } | 
|  |  | 
|  | package("scenic_dev_app") { | 
|  | deps = [ "lab/scenic_dev_app" ] | 
|  |  | 
|  | binaries = [ | 
|  | { | 
|  | name = "scenic_dev_app" | 
|  | dest = "ui_example" | 
|  | }, | 
|  | ] | 
|  | meta = [ | 
|  | { | 
|  | path = rebase_path("meta/ui_example.cmx") | 
|  | dest = "scenic_dev_app.cmx" | 
|  | }, | 
|  | ] | 
|  | } | 
|  |  | 
|  | package("shadertoy_client") { | 
|  | deps = [ "shadertoy/client" ] | 
|  |  | 
|  | binaries = [ | 
|  | { | 
|  | name = "shadertoy_client" | 
|  | }, | 
|  | ] | 
|  | meta = [ | 
|  | { | 
|  | path = rebase_path("shadertoy/client/meta/shadertoy_client.cmx") | 
|  | dest = "shadertoy_client.cmx" | 
|  | }, | 
|  | ] | 
|  | } | 
|  |  | 
|  | package("shadertoy_service") { | 
|  | deps = [ "shadertoy/service" ] | 
|  |  | 
|  | binaries = [ | 
|  | { | 
|  | name = "shadertoy_service" | 
|  | }, | 
|  | ] | 
|  | meta = [ | 
|  | { | 
|  | path = rebase_path("shadertoy/service/meta/shadertoy_service.cmx") | 
|  | dest = "shadertoy_service.cmx" | 
|  | }, | 
|  | ] | 
|  |  | 
|  | public_deps = vulkan_validation_layers.public_deps | 
|  | loadable_modules = vulkan_validation_layers.loadable_modules | 
|  | resources = vulkan_validation_layers.resources | 
|  | } | 
|  |  | 
|  | package("simplest_app") { | 
|  | deps = [ "simplest_app" ] | 
|  |  | 
|  | binaries = [ | 
|  | { | 
|  | name = "simplest_app" | 
|  | dest = "ui_example" | 
|  | }, | 
|  | ] | 
|  | meta = [ | 
|  | { | 
|  | path = rebase_path("meta/ui_example.cmx") | 
|  | dest = "simplest_app.cmx" | 
|  | }, | 
|  | ] | 
|  | } | 
|  |  | 
|  | # NOTE: this depends on the shadertoy_client example, which is launched by | 
|  | # the simplest_embedder binary. | 
|  | package("simplest_embedder") { | 
|  | deps = [ | 
|  | "shadertoy/client", | 
|  | "simplest_embedder", | 
|  | ] | 
|  |  | 
|  | binaries = [ | 
|  | { | 
|  | name = "simplest_embedder" | 
|  | dest = "ui_example" | 
|  | }, | 
|  | ] | 
|  | meta = [ | 
|  | { | 
|  | path = rebase_path("meta/ui_example.cmx") | 
|  | dest = "simplest_embedder.cmx" | 
|  | }, | 
|  | ] | 
|  | } | 
|  |  | 
|  | package("spinning_square_view") { | 
|  | deps = [ "spinning_square" ] | 
|  |  | 
|  | binaries = [ | 
|  | { | 
|  | name = "spinning_square_view" | 
|  | dest = "ui_example" | 
|  | }, | 
|  | ] | 
|  | meta = [ | 
|  | { | 
|  | path = rebase_path("meta/ui_example.cmx") | 
|  | dest = "spinning_square_view.cmx" | 
|  | }, | 
|  | ] | 
|  | } | 
|  |  | 
|  | package("standalone_app") { | 
|  | deps = [ "standalone_app" ] | 
|  |  | 
|  | binaries = [ | 
|  | { | 
|  | name = "standalone_app" | 
|  | dest = "ui_example" | 
|  | }, | 
|  | ] | 
|  | meta = [ | 
|  | { | 
|  | path = rebase_path("meta/ui_example.cmx") | 
|  | dest = "standalone_app.cmx" | 
|  | }, | 
|  | ] | 
|  | } | 
|  |  | 
|  | package("tile_view") { | 
|  | deps = [ "tile" ] | 
|  |  | 
|  | binaries = [ | 
|  | { | 
|  | name = "tile_view" | 
|  | dest = "ui_example" | 
|  | }, | 
|  | ] | 
|  | meta = [ | 
|  | { | 
|  | path = rebase_path("meta/ui_example.cmx") | 
|  | dest = "tile_view.cmx" | 
|  | }, | 
|  | ] | 
|  | } | 
|  |  | 
|  | package("yuv_to_image_pipe") { | 
|  | deps = [ "yuv_to_image_pipe" ] | 
|  |  | 
|  | binaries = [ | 
|  | { | 
|  | name = "yuv_to_image_pipe" | 
|  | }, | 
|  | ] | 
|  | meta = [ | 
|  | { | 
|  | path = rebase_path("yuv_to_image_pipe/meta/yuv_to_image_pipe.cmx") | 
|  | dest = "yuv_to_image_pipe.cmx" | 
|  | }, | 
|  | ] | 
|  | } |