summaryrefslogtreecommitdiff
path: root/chromium/mash/BUILD.gn
blob: b9aa26ab1bc898356d87e348cae20e9eba34e9e1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# Copyright 2015 The Chromium 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/config/nacl/config.gni")
import("//components/nacl/features.gni")
import("//services/catalog/public/tools/catalog.gni")
import("//services/service_manager/public/service_manifest.gni")
import("//testing/test.gni")

# Target that builders build.
group("all") {
  testonly = true

  deps = [
    ":mash_catalog",
    "//components/services/leveldb",
    "//mash/catalog_viewer",
    "//mash/example",
    "//mash/runner",
    "//mash/session",
    "//mash/task_viewer",
  ]

  # Build on platforms that support ash.
  if (is_chromeos) {
    deps += [ "//ash/components/quick_launch:quick_launch_app" ]
  }
}

# This is the catalog of services available to a standalone mash environment.
# Build //mash/runner to generate the runner executable.
catalog("catalog") {
  testonly = true

  standalone_services = [
    "//components/services/leveldb:manifest",
    "//mash/catalog_viewer:manifest",
    "//mash/session:manifest",
    "//mash/task_viewer:manifest",
    "//services/ws/ime/test_ime_driver:manifest",
    "//services/viz:manifest",
  ]

  executable_overrides = [ "content_packaged_services:@EXE_DIR/chrome" ]

  catalog_deps = [ "//mash/example:catalog" ]

  if (is_chromeos) {
    standalone_services += [
      "//ash:manifest",
      "//ash/components/quick_launch:manifest",
    ]
  }

  if (is_linux) {
    standalone_services += [ "//components/services/font:manifest" ]
  }

  if (enable_nacl) {
    standalone_services += [ "//components/nacl/loader:nacl_loader_manifest" ]
    if (is_win && target_cpu == "x86") {
      standalone_services += [ "//components/nacl/broker:nacl_broker_manifest" ]
    }
  }
}

copy("mash_catalog") {
  testonly = true
  sources = get_target_outputs(":catalog")
  outputs = [
    "$root_out_dir/mash_catalog.json",
  ]
  deps = [
    ":catalog",
  ]
}