blob: 7fb3c018d1200fbecbda1c6bbedbebcdf5d2e732 [file] [log] [blame]
# Copyright 2017 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")
# We follow the conventions of ../BUILD.gn for the organization of the sources,
# build rules, and packages, with the following modifications:
#
# 1. All the binaries used in tests are run through a basemgr invocation
# configured in the .tspec file of the benchmark subdirectory.
#
# 2. The component binary as well as its package is named with a prefix that
# tells the benchmark it belongs to, followed by "_benchmark", followed by
# more name components as described in ../BUILD.gn. The tspec file is also
# named like the benchmark, followed by "_benchmark", followed by ".tspec".
#
# 3. [unchanged]
#
# 4. [unchanged]
#
# 5. [unchanged]
#
#
# HOW TO ADD A NEW BENCHMARK
#
# 1. Add a new subdirectory with rules for the test components (session shells,
# modules, agents). Define all test components as executable_package()s.
#
# 2. Add the newly defined packages for all test components to
# //peridot/packages/benchmarks/modular.
#
# 3. Add a tspec file for the benchmark in the newly added subdirectory.
#
# 4. Add an entry for the tspec file to the resources = field of the
# modular_benchmarks build rule.
#
# 5. Add an entry for the test to run_modular_benchmarks.sh.
group("benchmarks") {
testonly = true
deps = [
":peridot_benchmarks_bin",
"story",
]
}
package("modular_benchmarks") {
testonly = true
binaries = [
{
name = rebase_path("run_modular_benchmarks.sh")
dest = "run_modular_benchmarks.sh"
},
]
resources = [
{
path = rebase_path("story/modular_benchmark_story.tspec")
dest = "modular_benchmark_story.tspec"
},
]
}
executable("peridot_benchmarks_bin") {
output_name = "peridot_benchmarks"
sources = [
"benchmarks.cc",
]
deps = [
"//garnet/testing/benchmarking:benchmarking",
]
}
package("peridot_benchmarks") {
testonly = true
binaries = [
{
name = rebase_path("benchmarks.sh")
dest = "benchmarks.sh"
},
{
shell = true
name = "peridot_benchmarks"
},
]
deps = [
":peridot_benchmarks_bin",
]
}