| # Copyright 2019 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. |
| |
| if (target_os == "") { |
| target_os = "ios" |
| } |
| if (target_cpu == "") { |
| target_cpu = host_cpu |
| } |
| if (current_cpu == "") { |
| current_cpu = target_cpu |
| } |
| if (current_os == "") { |
| current_os = target_os |
| } |
| |
| declare_args() { |
| # Control which platform the build is targeting. Valid values are |
| # "simulator" or "device". |
| target_environment = "simulator" |
| } |
| |
| assert( |
| target_environment == "simulator" || target_environment == "device", |
| "Only supported values for target_environment are 'simulator' and 'device'") |
| |
| # All binary targets will get this list of configs by default. |
| _shared_binary_target_configs = [ "//build:compiler" ] |
| |
| # Apply that default list to the binary target types. |
| set_defaults("executable") { |
| configs = _shared_binary_target_configs |
| configs += [ "//build:shared_binary" ] |
| } |
| set_defaults("static_library") { |
| configs = _shared_binary_target_configs |
| } |
| set_defaults("shared_library") { |
| configs = _shared_binary_target_configs |
| configs += [ "//build:shared_binary" ] |
| } |
| set_defaults("source_set") { |
| configs = _shared_binary_target_configs |
| } |
| |
| set_default_toolchain("//build/toolchain/$target_os:clang_$target_cpu") |
| |
| if (target_os == "ios") { |
| host_toolchain = "//build/toolchain/$host_os:clang_$host_cpu" |
| } else { |
| host_toolchain = default_toolchain |
| } |