| # Copyright 2018 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. |
| |
| # To build a different Scenic-y executable, cut'n'paste the |
| # declare_args() and executable("scenic") into a different |
| # BUILD.gn and then modify the args and the executable name, |
| # as desired. |
| |
| declare_args() { |
| enable_gfx_subsystem = true |
| enable_input_subsystem = true |
| } |
| |
| executable("bin") { |
| output_name = "scenic" |
| |
| sources = [ |
| "app.cc", |
| "app.h", |
| "main.cc", |
| ] |
| |
| deps = [ |
| ":base_deps", |
| "//sdk/lib/sys/inspect/cpp", |
| "//src/lib/cobalt/cpp:cobalt_logger", |
| "//src/ui/scenic/lib/annotation:annotation_registry", |
| "//src/ui/scenic/lib/scheduling:frame_metrics_registry", |
| "//src/ui/scenic/lib/shutdown", |
| "//src/ui/scenic/lib/shutdown:lifecycle_controller", |
| "//src/ui/scenic/lib/watchdog", |
| "//zircon/public/lib/async-loop-cpp", |
| "//zircon/public/lib/async-loop-default", |
| "//zircon/public/lib/inspect", |
| ] |
| defines = [] |
| |
| if (enable_gfx_subsystem) { |
| defines += [ "SCENIC_ENABLE_GFX_SUBSYSTEM" ] |
| deps += [ |
| "//src/ui/scenic/lib/display", |
| "//src/ui/scenic/lib/gfx", |
| ] |
| } |
| |
| if (enable_input_subsystem) { |
| defines += [ "SCENIC_ENABLE_INPUT_SUBSYSTEM" ] |
| deps += [ "//src/ui/scenic/lib/input" ] |
| } |
| |
| # Extra stack needed to avoid crashes when loading vulkan validation layers |
| # with asan enabled. |
| ldflags = [ "-Wl,-z,stack-size=0x100000" ] |
| } |
| |
| source_set("base_deps") { |
| public_deps = [ |
| "//sdk/lib/fidl/cpp", |
| "//sdk/lib/sys/cpp", |
| "//src/lib/fsl", |
| "//src/lib/fxl", |
| "//src/ui/scenic/lib/scenic", |
| "//src/ui/scenic/lib/scenic/util", |
| "//src/ui/scenic/lib/scheduling:frame_scheduler", |
| "//zircon/public/lib/async-cpp", |
| "//zircon/public/lib/fit", |
| "//zircon/public/lib/trace-provider-with-fdio", |
| ] |
| } |