16d528ed9Sopenharmony_ci# Copyright 2019 The Chromium Authors. All rights reserved. 26d528ed9Sopenharmony_ci# Use of this source code is governed by a BSD-style license that can be 36d528ed9Sopenharmony_ci# found in the LICENSE file. 46d528ed9Sopenharmony_ci 56d528ed9Sopenharmony_ciif (target_os == "") { 66d528ed9Sopenharmony_ci target_os = "ios" 76d528ed9Sopenharmony_ci} 86d528ed9Sopenharmony_ciif (target_cpu == "") { 96d528ed9Sopenharmony_ci target_cpu = host_cpu 106d528ed9Sopenharmony_ci} 116d528ed9Sopenharmony_ciif (current_cpu == "") { 126d528ed9Sopenharmony_ci current_cpu = target_cpu 136d528ed9Sopenharmony_ci} 146d528ed9Sopenharmony_ciif (current_os == "") { 156d528ed9Sopenharmony_ci current_os = target_os 166d528ed9Sopenharmony_ci} 176d528ed9Sopenharmony_ci 186d528ed9Sopenharmony_cideclare_args() { 196d528ed9Sopenharmony_ci # Control which platform the build is targeting. Valid values are 206d528ed9Sopenharmony_ci # "simulator" or "device". 216d528ed9Sopenharmony_ci target_environment = "simulator" 226d528ed9Sopenharmony_ci} 236d528ed9Sopenharmony_ci 246d528ed9Sopenharmony_ciassert( 256d528ed9Sopenharmony_ci target_environment == "simulator" || target_environment == "device", 266d528ed9Sopenharmony_ci "Only supported values for target_environment are 'simulator' and 'device'") 276d528ed9Sopenharmony_ci 286d528ed9Sopenharmony_ci# All binary targets will get this list of configs by default. 296d528ed9Sopenharmony_ci_shared_binary_target_configs = [ "//build:compiler" ] 306d528ed9Sopenharmony_ci 316d528ed9Sopenharmony_ci# Apply that default list to the binary target types. 326d528ed9Sopenharmony_ciset_defaults("executable") { 336d528ed9Sopenharmony_ci configs = _shared_binary_target_configs 346d528ed9Sopenharmony_ci configs += [ "//build:shared_binary" ] 356d528ed9Sopenharmony_ci} 366d528ed9Sopenharmony_ciset_defaults("static_library") { 376d528ed9Sopenharmony_ci configs = _shared_binary_target_configs 386d528ed9Sopenharmony_ci} 396d528ed9Sopenharmony_ciset_defaults("shared_library") { 406d528ed9Sopenharmony_ci configs = _shared_binary_target_configs 416d528ed9Sopenharmony_ci configs += [ "//build:shared_binary" ] 426d528ed9Sopenharmony_ci} 436d528ed9Sopenharmony_ciset_defaults("source_set") { 446d528ed9Sopenharmony_ci configs = _shared_binary_target_configs 456d528ed9Sopenharmony_ci} 466d528ed9Sopenharmony_ci 476d528ed9Sopenharmony_ciset_default_toolchain("//build/toolchain/$target_os:clang_$target_cpu") 486d528ed9Sopenharmony_ci 496d528ed9Sopenharmony_ciif (target_os == "ios") { 506d528ed9Sopenharmony_ci host_toolchain = "//build/toolchain/$host_os:clang_$host_cpu" 516d528ed9Sopenharmony_ci} else { 526d528ed9Sopenharmony_ci host_toolchain = default_toolchain 536d528ed9Sopenharmony_ci} 54