2025-01-13 18:38:58 +08:00
|
|
|
# Copyright 2014 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.
|
|
|
|
|
2025-01-16 11:03:48 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# board_toolchain 用于定义使用的编译工具链
|
|
|
|
# 这个值可以取 gcc riscv-gcc
|
|
|
|
|
|
|
|
|
|
|
|
if (!defined(board_toolchain)){
|
|
|
|
board_toolchain="gcc"
|
|
|
|
}
|
|
|
|
|
|
|
|
if (board_toolchain=="riscv-gcc"){
|
|
|
|
current_cc_command = "riscv64-unknown-elf-gcc"
|
|
|
|
current_cxx_command = "riscv64-unknown-elf-g++"
|
|
|
|
current_ar_command = "riscv64-unknown-elf-ar"
|
|
|
|
current_ld_command = current_cc_command
|
|
|
|
current_strip_command =
|
|
|
|
"riscv64-unknown-elf-strip --strip-unneeded"
|
|
|
|
} else if (board_toolchain=="gcc"){
|
|
|
|
current_cc_command = "gcc"
|
|
|
|
current_cxx_command = "g++"
|
|
|
|
current_ar_command = "ar"
|
|
|
|
current_ld_command = current_cc_command
|
|
|
|
current_strip_command =
|
|
|
|
"strip --strip-unneeded"
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2025-01-13 18:38:58 +08:00
|
|
|
if (target_os == "") {
|
|
|
|
target_os = host_os
|
|
|
|
}
|
|
|
|
if (target_cpu == "") {
|
|
|
|
target_cpu = host_cpu
|
|
|
|
}
|
|
|
|
if (current_cpu == "") {
|
|
|
|
current_cpu = target_cpu
|
|
|
|
}
|
|
|
|
if (current_os == "") {
|
|
|
|
current_os = target_os
|
|
|
|
}
|
|
|
|
|
|
|
|
is_linux = host_os == "linux" && current_os == "linux" && target_os == "linux"
|
|
|
|
is_mac = host_os == "mac" && current_os == "mac" && target_os == "mac"
|
|
|
|
|
|
|
|
# All binary targets will get this list of configs by default.
|
|
|
|
_shared_binary_target_configs = [ "//build:compiler_defaults" ]
|
|
|
|
|
|
|
|
# Apply that default list to the binary target types.
|
|
|
|
set_defaults("executable") {
|
|
|
|
configs = _shared_binary_target_configs
|
|
|
|
|
|
|
|
# Executables get this additional configuration.
|
|
|
|
configs += [ "//build:executable_ldconfig" ]
|
|
|
|
}
|
|
|
|
set_defaults("static_library") {
|
|
|
|
configs = _shared_binary_target_configs
|
|
|
|
}
|
|
|
|
set_defaults("shared_library") {
|
|
|
|
configs = _shared_binary_target_configs
|
|
|
|
}
|
|
|
|
set_defaults("source_set") {
|
|
|
|
configs = _shared_binary_target_configs
|
|
|
|
}
|
|
|
|
|
2025-01-16 11:03:48 +08:00
|
|
|
set_default_toolchain("//build/toolchain:${board_toolchain}")
|