1*6777b538SAndroid Build Coastguard Worker# Copyright 2019 The Chromium Authors 2*6777b538SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be 3*6777b538SAndroid Build Coastguard Worker# found in the LICENSE file. 4*6777b538SAndroid Build Coastguard Worker 5*6777b538SAndroid Build Coastguard Worker# Build targets for constructing CIPD release archives. 6*6777b538SAndroid Build Coastguard Worker 7*6777b538SAndroid Build Coastguard Workerassert(is_fuchsia) 8*6777b538SAndroid Build Coastguard Worker 9*6777b538SAndroid Build Coastguard Workerimport("//build/cipd/cipd.gni") 10*6777b538SAndroid Build Coastguard Workerimport("//build/config/chrome_build.gni") 11*6777b538SAndroid Build Coastguard Workerimport("//build/config/compiler/compiler.gni") 12*6777b538SAndroid Build Coastguard Workerimport("//build/util/process_version.gni") 13*6777b538SAndroid Build Coastguard Workerimport("//third_party/fuchsia-gn-sdk/src/build_id_dir.gni") 14*6777b538SAndroid Build Coastguard Workerimport("//third_party/fuchsia-gn-sdk/src/cipd.gni") 15*6777b538SAndroid Build Coastguard Worker 16*6777b538SAndroid Build Coastguard Workervisibility = [ ":*" ] 17*6777b538SAndroid Build Coastguard Worker 18*6777b538SAndroid Build Coastguard Worker# Allows a builder to explicitly declare the CIPD path. The base path is what 19*6777b538SAndroid Build Coastguard Worker# comes after `.../p/` in the CIPD URL. 20*6777b538SAndroid Build Coastguard Workerdeclare_args() { 21*6777b538SAndroid Build Coastguard Worker fuchsia_cipd_package_base_path = "" 22*6777b538SAndroid Build Coastguard Worker} 23*6777b538SAndroid Build Coastguard Worker 24*6777b538SAndroid Build Coastguard Worker# TODO(zijiehe): Eliminate the use of 'package_base_path' during the 25*6777b538SAndroid Build Coastguard Worker# refactoring. 26*6777b538SAndroid Build Coastguard Workerif (fuchsia_cipd_package_base_path == "") { 27*6777b538SAndroid Build Coastguard Worker if (is_chrome_branded) { 28*6777b538SAndroid Build Coastguard Worker package_base_path = "chrome_internal/fuchsia" 29*6777b538SAndroid Build Coastguard Worker } else { 30*6777b538SAndroid Build Coastguard Worker package_base_path = "chromium/fuchsia" 31*6777b538SAndroid Build Coastguard Worker } 32*6777b538SAndroid Build Coastguard Worker} else { 33*6777b538SAndroid Build Coastguard Worker package_base_path = fuchsia_cipd_package_base_path 34*6777b538SAndroid Build Coastguard Worker} 35*6777b538SAndroid Build Coastguard Worker 36*6777b538SAndroid Build Coastguard Worker# Archives related specifically to `fuchsia.web` 37*6777b538SAndroid Build Coastguard Worker_web_engine_directory = "web_engine" 38*6777b538SAndroid Build Coastguard Worker 39*6777b538SAndroid Build Coastguard Worker# Archives of tools intended to be run on a Linux/Mac host rather than the 40*6777b538SAndroid Build Coastguard Worker# Fuchsia device. 41*6777b538SAndroid Build Coastguard Worker_host_tools_directory = "host_tools" 42*6777b538SAndroid Build Coastguard Worker 43*6777b538SAndroid Build Coastguard Worker_archive_suffix = "_archive" 44*6777b538SAndroid Build Coastguard Worker 45*6777b538SAndroid Build Coastguard Worker# Extracts the numeric Chrome version and writes it to a file in the output 46*6777b538SAndroid Build Coastguard Worker# directory. 47*6777b538SAndroid Build Coastguard Worker# 48*6777b538SAndroid Build Coastguard Worker# To check out the repository on the commit where the version was generated, 49*6777b538SAndroid Build Coastguard Worker# simply call `git checkout <version>`, and Git will check out the commit 50*6777b538SAndroid Build Coastguard Worker# associated with the <version> tag. 51*6777b538SAndroid Build Coastguard Workerprocess_version("version") { 52*6777b538SAndroid Build Coastguard Worker template_file = "version.template" 53*6777b538SAndroid Build Coastguard Worker sources = [ "//chrome/VERSION" ] 54*6777b538SAndroid Build Coastguard Worker output = "${target_gen_dir}/VERSION" 55*6777b538SAndroid Build Coastguard Worker process_only = true 56*6777b538SAndroid Build Coastguard Worker} 57*6777b538SAndroid Build Coastguard Worker 58*6777b538SAndroid Build Coastguard Workerif (target_cpu == "x64") { 59*6777b538SAndroid Build Coastguard Worker targetarch = "amd64" 60*6777b538SAndroid Build Coastguard Worker} else { 61*6777b538SAndroid Build Coastguard Worker targetarch = "arm64" 62*6777b538SAndroid Build Coastguard Worker} 63*6777b538SAndroid Build Coastguard Worker 64*6777b538SAndroid Build Coastguard Worker# Prepares a CIPD archive, produces a corresponding LICENSE file, 65*6777b538SAndroid Build Coastguard Worker# LICENSE.spdx.json file and generates a manifest file. 66*6777b538SAndroid Build Coastguard Worker# 67*6777b538SAndroid Build Coastguard Worker# Parameters: 68*6777b538SAndroid Build Coastguard Worker# package_subdirectory: Specify the subdirectory relative to 69*6777b538SAndroid Build Coastguard Worker# |package_base_path| in which the package is put. 70*6777b538SAndroid Build Coastguard Worker# description: Sets the "description" field in CIPD package definition. 71*6777b538SAndroid Build Coastguard Worker# 72*6777b538SAndroid Build Coastguard Worker# Optional parameters used directly by fuchsia_cipd_package template: 73*6777b538SAndroid Build Coastguard Worker# "install_mode", 74*6777b538SAndroid Build Coastguard Worker# "sources", 75*6777b538SAndroid Build Coastguard Worker# "data", 76*6777b538SAndroid Build Coastguard Worker# "data_deps" 77*6777b538SAndroid Build Coastguard Worker# "deps", 78*6777b538SAndroid Build Coastguard Worker# "testonly", 79*6777b538SAndroid Build Coastguard Worker 80*6777b538SAndroid Build Coastguard Workertemplate("cipd_archive") { 81*6777b538SAndroid Build Coastguard Worker forward_variables_from(invoker, 82*6777b538SAndroid Build Coastguard Worker [ 83*6777b538SAndroid Build Coastguard Worker "package_subdirectory", 84*6777b538SAndroid Build Coastguard Worker "description", 85*6777b538SAndroid Build Coastguard Worker "install_mode", 86*6777b538SAndroid Build Coastguard Worker "sources", 87*6777b538SAndroid Build Coastguard Worker "data", 88*6777b538SAndroid Build Coastguard Worker "data_deps", 89*6777b538SAndroid Build Coastguard Worker "deps", 90*6777b538SAndroid Build Coastguard Worker "testonly", 91*6777b538SAndroid Build Coastguard Worker ]) 92*6777b538SAndroid Build Coastguard Worker 93*6777b538SAndroid Build Coastguard Worker _license_path = "${target_gen_dir}/${target_name}/LICENSE" 94*6777b538SAndroid Build Coastguard Worker _invoker_dir = get_label_info(":${invoker.target_name}", "dir") 95*6777b538SAndroid Build Coastguard Worker _license_target = "${_invoker_dir}:${invoker.target_name}${_archive_suffix}" 96*6777b538SAndroid Build Coastguard Worker 97*6777b538SAndroid Build Coastguard Worker # GN is used by the script and is thus an input. 98*6777b538SAndroid Build Coastguard Worker if (host_os == "mac") { 99*6777b538SAndroid Build Coastguard Worker _gn_path = "//buildtools/mac/gn" 100*6777b538SAndroid Build Coastguard Worker } else if (host_os == "linux") { 101*6777b538SAndroid Build Coastguard Worker _gn_path = "//buildtools/linux64/gn" 102*6777b538SAndroid Build Coastguard Worker } 103*6777b538SAndroid Build Coastguard Worker 104*6777b538SAndroid Build Coastguard Worker # Produces a consolidated license file. 105*6777b538SAndroid Build Coastguard Worker action("${target_name}_license") { 106*6777b538SAndroid Build Coastguard Worker script = "//tools/licenses/licenses.py" 107*6777b538SAndroid Build Coastguard Worker inputs = [ "$_gn_path" ] 108*6777b538SAndroid Build Coastguard Worker outputs = [ _license_path ] 109*6777b538SAndroid Build Coastguard Worker args = [ 110*6777b538SAndroid Build Coastguard Worker "license_file", 111*6777b538SAndroid Build Coastguard Worker rebase_path(_license_path, root_build_dir), 112*6777b538SAndroid Build Coastguard Worker "--gn-target", 113*6777b538SAndroid Build Coastguard Worker _license_target, 114*6777b538SAndroid Build Coastguard Worker "--gn-out-dir", 115*6777b538SAndroid Build Coastguard Worker ".", 116*6777b538SAndroid Build Coastguard Worker ] 117*6777b538SAndroid Build Coastguard Worker } 118*6777b538SAndroid Build Coastguard Worker 119*6777b538SAndroid Build Coastguard Worker # Produces a consolidated license file in spdx format. 120*6777b538SAndroid Build Coastguard Worker action("${target_name}_license_spdx") { 121*6777b538SAndroid Build Coastguard Worker _license_path_spdx = "${_license_path}.spdx.json" 122*6777b538SAndroid Build Coastguard Worker 123*6777b538SAndroid Build Coastguard Worker script = "//tools/licenses/licenses.py" 124*6777b538SAndroid Build Coastguard Worker inputs = [ "$_gn_path" ] 125*6777b538SAndroid Build Coastguard Worker outputs = [ _license_path_spdx ] 126*6777b538SAndroid Build Coastguard Worker args = [ 127*6777b538SAndroid Build Coastguard Worker "license_file", 128*6777b538SAndroid Build Coastguard Worker rebase_path(_license_path_spdx, root_build_dir), 129*6777b538SAndroid Build Coastguard Worker "--gn-target", 130*6777b538SAndroid Build Coastguard Worker _license_target, 131*6777b538SAndroid Build Coastguard Worker "--gn-out-dir", 132*6777b538SAndroid Build Coastguard Worker ".", 133*6777b538SAndroid Build Coastguard Worker "--format", 134*6777b538SAndroid Build Coastguard Worker "spdx", 135*6777b538SAndroid Build Coastguard Worker "--spdx-doc-name", 136*6777b538SAndroid Build Coastguard Worker "${invoker.target_name}", 137*6777b538SAndroid Build Coastguard Worker ] 138*6777b538SAndroid Build Coastguard Worker } 139*6777b538SAndroid Build Coastguard Worker 140*6777b538SAndroid Build Coastguard Worker if (!defined(deps)) { 141*6777b538SAndroid Build Coastguard Worker deps = [] 142*6777b538SAndroid Build Coastguard Worker } 143*6777b538SAndroid Build Coastguard Worker deps += [ 144*6777b538SAndroid Build Coastguard Worker ":${target_name}_license", 145*6777b538SAndroid Build Coastguard Worker ":${target_name}_license_spdx", 146*6777b538SAndroid Build Coastguard Worker ":version", 147*6777b538SAndroid Build Coastguard Worker ] 148*6777b538SAndroid Build Coastguard Worker 149*6777b538SAndroid Build Coastguard Worker if (!defined(sources)) { 150*6777b538SAndroid Build Coastguard Worker sources = [] 151*6777b538SAndroid Build Coastguard Worker } 152*6777b538SAndroid Build Coastguard Worker sources += get_target_outputs(":${target_name}_license") + 153*6777b538SAndroid Build Coastguard Worker get_target_outputs(":${target_name}_license_spdx") + 154*6777b538SAndroid Build Coastguard Worker [ "${target_gen_dir}/VERSION" ] 155*6777b538SAndroid Build Coastguard Worker 156*6777b538SAndroid Build Coastguard Worker fuchsia_cipd_package("${target_name}${_archive_suffix}") { 157*6777b538SAndroid Build Coastguard Worker package = "${package_base_path}/${package_subdirectory}/${targetarch}/${invoker.target_name}" 158*6777b538SAndroid Build Coastguard Worker package_root = "${target_gen_dir}/${invoker.target_name}" 159*6777b538SAndroid Build Coastguard Worker package_definition_name = "${invoker.target_name}.yaml" 160*6777b538SAndroid Build Coastguard Worker 161*6777b538SAndroid Build Coastguard Worker # Always use absolute path. 162*6777b538SAndroid Build Coastguard Worker use_absolute_root_path = true 163*6777b538SAndroid Build Coastguard Worker } 164*6777b538SAndroid Build Coastguard Worker} 165*6777b538SAndroid Build Coastguard Worker 166*6777b538SAndroid Build Coastguard Worker# Prepares a CIPD test archive, which is a regular CIPD archive that generates 167*6777b538SAndroid Build Coastguard Worker# test manifests for a given list of test_sets. 168*6777b538SAndroid Build Coastguard Worker# 169*6777b538SAndroid Build Coastguard Worker# Parameters: 170*6777b538SAndroid Build Coastguard Worker# test_sets: A list of scopes for which test manifests will be created. Each 171*6777b538SAndroid Build Coastguard Worker# set contains: 172*6777b538SAndroid Build Coastguard Worker# manifest_path: The path to the generated manifest JSON file. 173*6777b538SAndroid Build Coastguard Worker# far_sources: An optional list of CFv2 test component .far files. 174*6777b538SAndroid Build Coastguard Worker# 175*6777b538SAndroid Build Coastguard Worker# Required parameters used by the cipd_archive template: 176*6777b538SAndroid Build Coastguard Worker# "package_subdirectory", 177*6777b538SAndroid Build Coastguard Worker# 178*6777b538SAndroid Build Coastguard Worker# Optional parameters used by the cipd_archive template: 179*6777b538SAndroid Build Coastguard Worker# "description" 180*6777b538SAndroid Build Coastguard Worker# "install_mode", 181*6777b538SAndroid Build Coastguard Worker# "data", 182*6777b538SAndroid Build Coastguard Worker# "data_deps" 183*6777b538SAndroid Build Coastguard Worker# "deps", 184*6777b538SAndroid Build Coastguard Worker# "testonly", 185*6777b538SAndroid Build Coastguard Worker 186*6777b538SAndroid Build Coastguard Workertemplate("cipd_test_archive") { 187*6777b538SAndroid Build Coastguard Worker forward_variables_from(invoker, 188*6777b538SAndroid Build Coastguard Worker [ 189*6777b538SAndroid Build Coastguard Worker "package_subdirectory", 190*6777b538SAndroid Build Coastguard Worker "description", 191*6777b538SAndroid Build Coastguard Worker "install_mode", 192*6777b538SAndroid Build Coastguard Worker "data", 193*6777b538SAndroid Build Coastguard Worker "data_deps", 194*6777b538SAndroid Build Coastguard Worker "deps", 195*6777b538SAndroid Build Coastguard Worker "testonly", 196*6777b538SAndroid Build Coastguard Worker "test_sets", 197*6777b538SAndroid Build Coastguard Worker ]) 198*6777b538SAndroid Build Coastguard Worker 199*6777b538SAndroid Build Coastguard Worker assert(defined(test_sets) && defined(testonly) && testonly == true) 200*6777b538SAndroid Build Coastguard Worker 201*6777b538SAndroid Build Coastguard Worker cipd_archive(target_name) { 202*6777b538SAndroid Build Coastguard Worker # Build JSON manifests for each suite of tests and include them in the 203*6777b538SAndroid Build Coastguard Worker # archive. 204*6777b538SAndroid Build Coastguard Worker sources = [] 205*6777b538SAndroid Build Coastguard Worker foreach(test_set, test_sets) { 206*6777b538SAndroid Build Coastguard Worker assert(defined(test_set.far_sources)) 207*6777b538SAndroid Build Coastguard Worker sources += [ test_set.manifest_path ] 208*6777b538SAndroid Build Coastguard Worker _manifest_contents = [] 209*6777b538SAndroid Build Coastguard Worker if (defined(test_set.far_sources)) { 210*6777b538SAndroid Build Coastguard Worker foreach(source, test_set.far_sources) { 211*6777b538SAndroid Build Coastguard Worker package_name = get_path_info(source, "name") 212*6777b538SAndroid Build Coastguard Worker 213*6777b538SAndroid Build Coastguard Worker _manifest_contents += [ 214*6777b538SAndroid Build Coastguard Worker { 215*6777b538SAndroid Build Coastguard Worker package = package_name 216*6777b538SAndroid Build Coastguard Worker component_name = package_name + ".cm" 217*6777b538SAndroid Build Coastguard Worker }, 218*6777b538SAndroid Build Coastguard Worker ] 219*6777b538SAndroid Build Coastguard Worker } 220*6777b538SAndroid Build Coastguard Worker sources += test_set.far_sources 221*6777b538SAndroid Build Coastguard Worker } 222*6777b538SAndroid Build Coastguard Worker write_file(test_set.manifest_path, _manifest_contents, "json") 223*6777b538SAndroid Build Coastguard Worker } 224*6777b538SAndroid Build Coastguard Worker } 225*6777b538SAndroid Build Coastguard Worker} 226*6777b538SAndroid Build Coastguard Worker 227*6777b538SAndroid Build Coastguard Workercipd_archive("web_engine") { 228*6777b538SAndroid Build Coastguard Worker package_subdirectory = _web_engine_directory 229*6777b538SAndroid Build Coastguard Worker description = "Prebuilt WebEngine binaries for Fuchsia." 230*6777b538SAndroid Build Coastguard Worker 231*6777b538SAndroid Build Coastguard Worker deps = [ "//fuchsia_web/webengine:web_engine" ] 232*6777b538SAndroid Build Coastguard Worker sources = 233*6777b538SAndroid Build Coastguard Worker [ "${root_gen_dir}/fuchsia_web/webengine/web_engine/web_engine.far" ] 234*6777b538SAndroid Build Coastguard Worker} 235*6777b538SAndroid Build Coastguard Worker 236*6777b538SAndroid Build Coastguard Workercipd_archive("cast_runner") { 237*6777b538SAndroid Build Coastguard Worker package_subdirectory = _web_engine_directory 238*6777b538SAndroid Build Coastguard Worker description = "Prebuilt Cast application Runner binaries for Fuchsia." 239*6777b538SAndroid Build Coastguard Worker 240*6777b538SAndroid Build Coastguard Worker deps = [ "//fuchsia_web/runners:cast_runner_pkg" ] 241*6777b538SAndroid Build Coastguard Worker sources = 242*6777b538SAndroid Build Coastguard Worker [ "${root_gen_dir}/fuchsia_web/runners/cast_runner/cast_runner.far" ] 243*6777b538SAndroid Build Coastguard Worker} 244*6777b538SAndroid Build Coastguard Worker 245*6777b538SAndroid Build Coastguard Workercipd_archive("web_engine_shell") { 246*6777b538SAndroid Build Coastguard Worker package_subdirectory = _web_engine_directory 247*6777b538SAndroid Build Coastguard Worker description = "Simple command-line embedder for WebEngine." 248*6777b538SAndroid Build Coastguard Worker testonly = true 249*6777b538SAndroid Build Coastguard Worker 250*6777b538SAndroid Build Coastguard Worker deps = [ "//fuchsia_web/shell:web_engine_shell_pkg" ] 251*6777b538SAndroid Build Coastguard Worker sources = [ 252*6777b538SAndroid Build Coastguard Worker "${root_gen_dir}/fuchsia_web/shell/web_engine_shell/web_engine_shell.far", 253*6777b538SAndroid Build Coastguard Worker ] 254*6777b538SAndroid Build Coastguard Worker} 255*6777b538SAndroid Build Coastguard Worker 256*6777b538SAndroid Build Coastguard Worker_stripped_chromedriver_file = "${root_out_dir}/clang_x64/stripped/chromedriver" 257*6777b538SAndroid Build Coastguard Worker 258*6777b538SAndroid Build Coastguard Workeraction("strip_chromedriver_binary") { 259*6777b538SAndroid Build Coastguard Worker testonly = true 260*6777b538SAndroid Build Coastguard Worker 261*6777b538SAndroid Build Coastguard Worker prog_name = "${root_out_dir}/clang_x64/chromedriver" 262*6777b538SAndroid Build Coastguard Worker 263*6777b538SAndroid Build Coastguard Worker deps = [ "//chrome/test/chromedriver:chromedriver_server($host_toolchain)" ] 264*6777b538SAndroid Build Coastguard Worker script = "//build/gn_run_binary.py" 265*6777b538SAndroid Build Coastguard Worker sources = [ 266*6777b538SAndroid Build Coastguard Worker "//buildtools/third_party/eu-strip/bin/eu-strip", 267*6777b538SAndroid Build Coastguard Worker prog_name, 268*6777b538SAndroid Build Coastguard Worker ] 269*6777b538SAndroid Build Coastguard Worker outputs = [ _stripped_chromedriver_file ] 270*6777b538SAndroid Build Coastguard Worker args = [ 271*6777b538SAndroid Build Coastguard Worker rebase_path("//buildtools/third_party/eu-strip/bin/eu-strip", 272*6777b538SAndroid Build Coastguard Worker root_build_dir), 273*6777b538SAndroid Build Coastguard Worker "-o", 274*6777b538SAndroid Build Coastguard Worker rebase_path(_stripped_chromedriver_file, root_build_dir), 275*6777b538SAndroid Build Coastguard Worker rebase_path(prog_name, root_build_dir), 276*6777b538SAndroid Build Coastguard Worker ] 277*6777b538SAndroid Build Coastguard Worker} 278*6777b538SAndroid Build Coastguard Worker 279*6777b538SAndroid Build Coastguard Workercipd_archive("chromedriver") { 280*6777b538SAndroid Build Coastguard Worker package_subdirectory = "${_host_tools_directory}/\${os}" 281*6777b538SAndroid Build Coastguard Worker description = "Prebuilt Chromedriver binary for Fuchsia host." 282*6777b538SAndroid Build Coastguard Worker install_mode = "copy" 283*6777b538SAndroid Build Coastguard Worker testonly = true 284*6777b538SAndroid Build Coastguard Worker 285*6777b538SAndroid Build Coastguard Worker deps = [ ":strip_chromedriver_binary" ] 286*6777b538SAndroid Build Coastguard Worker sources = [ _stripped_chromedriver_file ] 287*6777b538SAndroid Build Coastguard Worker} 288*6777b538SAndroid Build Coastguard Worker 289*6777b538SAndroid Build Coastguard Workercipd_test_archive("tests") { 290*6777b538SAndroid Build Coastguard Worker package_subdirectory = _web_engine_directory 291*6777b538SAndroid Build Coastguard Worker description = "Prebuilt Chromium tests for Fuchsia." 292*6777b538SAndroid Build Coastguard Worker testonly = true 293*6777b538SAndroid Build Coastguard Worker 294*6777b538SAndroid Build Coastguard Worker _common_tests = [ 295*6777b538SAndroid Build Coastguard Worker "${root_gen_dir}/base/base_unittests/base_unittests.far", 296*6777b538SAndroid Build Coastguard Worker "${root_gen_dir}/ipc/ipc_tests/ipc_tests.far", 297*6777b538SAndroid Build Coastguard Worker "${root_gen_dir}/media/media_unittests/media_unittests.far", 298*6777b538SAndroid Build Coastguard Worker "${root_gen_dir}/mojo/mojo_unittests/mojo_unittests.far", 299*6777b538SAndroid Build Coastguard Worker "${root_gen_dir}/skia/skia_unittests/skia_unittests.far", 300*6777b538SAndroid Build Coastguard Worker "${root_gen_dir}/third_party/blink/common/blink_common_unittests/blink_common_unittests.far", 301*6777b538SAndroid Build Coastguard Worker ] 302*6777b538SAndroid Build Coastguard Worker deps = [ 303*6777b538SAndroid Build Coastguard Worker "//base:base_unittests_pkg", 304*6777b538SAndroid Build Coastguard Worker "//ipc:ipc_tests_pkg", 305*6777b538SAndroid Build Coastguard Worker "//media:media_unittests_pkg", 306*6777b538SAndroid Build Coastguard Worker "//mojo:mojo_unittests_pkg", 307*6777b538SAndroid Build Coastguard Worker "//skia:skia_unittests_pkg", 308*6777b538SAndroid Build Coastguard Worker "//third_party/blink/common:blink_common_unittests_pkg", 309*6777b538SAndroid Build Coastguard Worker ] 310*6777b538SAndroid Build Coastguard Worker 311*6777b538SAndroid Build Coastguard Worker _web_engine_tests = [ "${root_gen_dir}/fuchsia_web/webengine/web_engine_integration_tests/web_engine_integration_tests.far" ] 312*6777b538SAndroid Build Coastguard Worker deps += [ "//fuchsia_web/webengine:web_engine_integration_tests_pkg" ] 313*6777b538SAndroid Build Coastguard Worker 314*6777b538SAndroid Build Coastguard Worker _cast_runner_tests = [ "${root_gen_dir}/fuchsia_web/runners/cast_runner_integration_tests/cast_runner_integration_tests.far" ] 315*6777b538SAndroid Build Coastguard Worker deps += [ "//fuchsia_web/runners:cast_runner_integration_tests_pkg" ] 316*6777b538SAndroid Build Coastguard Worker 317*6777b538SAndroid Build Coastguard Worker _all_tests = _common_tests + _web_engine_tests + _cast_runner_tests 318*6777b538SAndroid Build Coastguard Worker 319*6777b538SAndroid Build Coastguard Worker test_sets = [ 320*6777b538SAndroid Build Coastguard Worker { 321*6777b538SAndroid Build Coastguard Worker manifest_path = "${target_gen_dir}/test_manifest.json" 322*6777b538SAndroid Build Coastguard Worker far_sources = _all_tests 323*6777b538SAndroid Build Coastguard Worker }, 324*6777b538SAndroid Build Coastguard Worker { 325*6777b538SAndroid Build Coastguard Worker manifest_path = "${target_gen_dir}/common_tests_manifest.json" 326*6777b538SAndroid Build Coastguard Worker far_sources = _common_tests 327*6777b538SAndroid Build Coastguard Worker }, 328*6777b538SAndroid Build Coastguard Worker { 329*6777b538SAndroid Build Coastguard Worker manifest_path = "${target_gen_dir}/web_engine_tests_manifest.json" 330*6777b538SAndroid Build Coastguard Worker far_sources = _web_engine_tests 331*6777b538SAndroid Build Coastguard Worker }, 332*6777b538SAndroid Build Coastguard Worker { 333*6777b538SAndroid Build Coastguard Worker manifest_path = "${target_gen_dir}/cast_runner_tests_manifest.json" 334*6777b538SAndroid Build Coastguard Worker far_sources = _cast_runner_tests 335*6777b538SAndroid Build Coastguard Worker }, 336*6777b538SAndroid Build Coastguard Worker ] 337*6777b538SAndroid Build Coastguard Worker} 338*6777b538SAndroid Build Coastguard Worker 339*6777b538SAndroid Build Coastguard Worker# Construct a consolidated directory of web_engine debugging symbols using the 340*6777b538SAndroid Build Coastguard Worker# GNU .build_id structure for CIPD archival. 341*6777b538SAndroid Build Coastguard Worker_web_engine_build_ids_target = "web_engine_debug_symbol_directory" 342*6777b538SAndroid Build Coastguard Worker_web_engine_debug_symbols_archive_name = "web_engine_debug_symbols" 343*6777b538SAndroid Build Coastguard Worker_web_engine_debug_symbols_outdir = "${target_gen_dir}/${_web_engine_debug_symbols_archive_name}/${_web_engine_build_ids_target}" 344*6777b538SAndroid Build Coastguard Worker 345*6777b538SAndroid Build Coastguard Workerbuild_id_dir(_web_engine_build_ids_target) { 346*6777b538SAndroid Build Coastguard Worker testonly = true # Some of the archives contain test packages. 347*6777b538SAndroid Build Coastguard Worker output_path = _web_engine_debug_symbols_outdir 348*6777b538SAndroid Build Coastguard Worker deps = [ ":web_engine_archives_with_tests" ] 349*6777b538SAndroid Build Coastguard Worker} 350*6777b538SAndroid Build Coastguard Worker 351*6777b538SAndroid Build Coastguard Workerfuchsia_cipd_package(_web_engine_debug_symbols_archive_name) { 352*6777b538SAndroid Build Coastguard Worker testonly = true 353*6777b538SAndroid Build Coastguard Worker package = "${package_base_path}/${_web_engine_directory}/${targetarch}/debug-symbols" 354*6777b538SAndroid Build Coastguard Worker package_root = _web_engine_debug_symbols_outdir 355*6777b538SAndroid Build Coastguard Worker package_definition_name = "${target_name}.yaml" 356*6777b538SAndroid Build Coastguard Worker package_definition_dir = "${target_gen_dir}/${target_name}" 357*6777b538SAndroid Build Coastguard Worker description = "Debugging symbols for prebuilt binaries from Chromium." 358*6777b538SAndroid Build Coastguard Worker use_absolute_root_path = true 359*6777b538SAndroid Build Coastguard Worker 360*6777b538SAndroid Build Coastguard Worker directories = [ "." ] 361*6777b538SAndroid Build Coastguard Worker deps = [ ":${_web_engine_build_ids_target}" ] 362*6777b538SAndroid Build Coastguard Worker} 363*6777b538SAndroid Build Coastguard Worker 364*6777b538SAndroid Build Coastguard Worker# A group for production archives to ensure nothing is testonly. 365*6777b538SAndroid Build Coastguard Workergroup("web_engine_production_archives") { 366*6777b538SAndroid Build Coastguard Worker deps = [ 367*6777b538SAndroid Build Coastguard Worker ":cast_runner${_archive_suffix}", 368*6777b538SAndroid Build Coastguard Worker ":web_engine${_archive_suffix}", 369*6777b538SAndroid Build Coastguard Worker ] 370*6777b538SAndroid Build Coastguard Worker} 371*6777b538SAndroid Build Coastguard Worker 372*6777b538SAndroid Build Coastguard Worker# Used by both the main group as well as :debug_symbols. 373*6777b538SAndroid Build Coastguard Workergroup("web_engine_archives_with_tests") { 374*6777b538SAndroid Build Coastguard Worker testonly = true # tests and web_engine_shell are testonly. 375*6777b538SAndroid Build Coastguard Worker deps = [ 376*6777b538SAndroid Build Coastguard Worker ":tests${_archive_suffix}", 377*6777b538SAndroid Build Coastguard Worker ":web_engine_production_archives", 378*6777b538SAndroid Build Coastguard Worker ":web_engine_shell${_archive_suffix}", 379*6777b538SAndroid Build Coastguard Worker ] 380*6777b538SAndroid Build Coastguard Worker} 381*6777b538SAndroid Build Coastguard Worker 382*6777b538SAndroid Build Coastguard Worker# TODO(zijiehe): Rename to "cipd_yaml" when possible. 383*6777b538SAndroid Build Coastguard Worker# This target only creates yaml files and related archives for cipd rather 384*6777b538SAndroid Build Coastguard Worker# than executing the cipd instance to upload them. 385*6777b538SAndroid Build Coastguard Worker# Currently it's named as "cipd" to match the folder name which introduces 386*6777b538SAndroid Build Coastguard Worker# confusions. 387*6777b538SAndroid Build Coastguard Workergroup("cipd") { 388*6777b538SAndroid Build Coastguard Worker testonly = true # Some archives are testonly. 389*6777b538SAndroid Build Coastguard Worker deps = [ 390*6777b538SAndroid Build Coastguard Worker ":web_engine_archives_with_tests", 391*6777b538SAndroid Build Coastguard Worker 392*6777b538SAndroid Build Coastguard Worker # Symbols are not uploaded for the following. 393*6777b538SAndroid Build Coastguard Worker ":chromedriver${_archive_suffix}", 394*6777b538SAndroid Build Coastguard Worker ":web_engine_debug_symbols", 395*6777b538SAndroid Build Coastguard Worker ] 396*6777b538SAndroid Build Coastguard Worker visibility = [] # Required to replace the file default. 397*6777b538SAndroid Build Coastguard Worker visibility = [ "//:gn_all" ] 398*6777b538SAndroid Build Coastguard Worker} 399