--- build/toolchain/gcc_toolchain.gni.orig 2021-07-15 19:13:30 UTC +++ build/toolchain/gcc_toolchain.gni @@ -51,6 +51,11 @@ if (enable_resource_allowlist_generation) { "enable_resource_allowlist_generation=true does not work for target_os=$target_os") } +declare_args() { + extra_cxxflags = "" + extra_ldflags = "" +} + # This template defines a toolchain for something that works like gcc # (including clang). # @@ -647,20 +652,32 @@ template("gcc_toolchain") { # actually just be doing a native compile. The invoker can optionally override # use_gold too. template("clang_toolchain") { - if (defined(invoker.toolprefix)) { - toolprefix = invoker.toolprefix - } else { - toolprefix = "" + if (!is_bsd) { + if (defined(invoker.toolprefix)) { + toolprefix = invoker.toolprefix + } else { + toolprefix = "" + } } gcc_toolchain(target_name) { - prefix = rebase_path("$clang_base_path/bin", root_build_dir) - cc = "$prefix/clang" - cxx = "$prefix/clang++" - ld = cxx - readelf = "${toolprefix}readelf" - ar = "${prefix}/llvm-ar" - nm = "${prefix}/llvm-nm" + if (is_bsd) { + prefix = "/usr/local/bin" + cc = "cc" + cxx = "c++" + ld = cxx + readelf = "readelf" + ar = "${prefix}/ar" + nm = "${prefix}/nm" + } else { + prefix = rebase_path("$clang_base_path/bin", root_build_dir) + cc = "$prefix/clang" + cxx = "$prefix/clang++" + ld = cxx + readelf = "${toolprefix}readelf" + ar = "${prefix}/llvm-ar" + nm = "${prefix}/llvm-nm" + } forward_variables_from(invoker, [