# Copyright 2016 The Bazel Authors. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#    http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

major_version: "local"
minor_version: ""
default_target_cpu: "same_as_host"

default_toolchain {
  cpu: "k8"
  toolchain_identifier: "linux_gnu_x86"
}

default_toolchain {
  cpu: "armeabi-v7a"
  toolchain_identifier: "stub_armeabi-v7a"
}

default_toolchain {
  cpu: "x64_windows"
  toolchain_identifier: "msvc_x64"
}

default_toolchain {
  cpu: "x64_windows_msvc"
  toolchain_identifier: "msvc_x64"
}

default_toolchain {
  cpu: "x64_windows_msys"
  toolchain_identifier: "msys_x64"
}

default_toolchain {
  cpu: "s390x"
  toolchain_identifier: "linux_gnu_x86"
}

default_toolchain {
  cpu: "ios_x86_64"
  toolchain_identifier: "ios_x86_64"
}

# Android tooling requires a default toolchain for the armeabi-v7a cpu.
toolchain {
  abi_version: "armeabi-v7a"
  abi_libc_version: "armeabi-v7a"
  builtin_sysroot: ""
  compiler: "compiler"
  host_system_name: "armeabi-v7a"
  needsPic: true
  supports_gold_linker: false
  supports_incremental_linker: false
  supports_fission: false
  supports_interface_shared_objects: false
  supports_normalizing_ar: false
  supports_start_end_lib: false
  target_libc: "armeabi-v7a"
  target_cpu: "armeabi-v7a"
  target_system_name: "armeabi-v7a"
  toolchain_identifier: "stub_armeabi-v7a"

  tool_path { name: "ar" path: "/bin/false" }
  tool_path { name: "compat-ld" path: "/bin/false" }
  tool_path { name: "cpp" path: "/bin/false" }
  tool_path { name: "dwp" path: "/bin/false" }
  tool_path { name: "gcc" path: "/bin/false" }
  tool_path { name: "gcov" path: "/bin/false" }
  tool_path { name: "ld" path: "/bin/false" }

  tool_path { name: "nm" path: "/bin/false" }
  tool_path { name: "objcopy" path: "/bin/false" }
  tool_path { name: "objdump" path: "/bin/false" }
  tool_path { name: "strip" path: "/bin/false" }
  linking_mode_flags { mode: DYNAMIC }
}

toolchain {
  toolchain_identifier: "ios_x86_64"
  host_system_name: "x86_64-apple-macosx"
  target_system_name: "x86_64-apple-ios"
  target_cpu: "ios_x86_64"
  target_libc: "ios"
  compiler: "compiler"
  abi_version: "local"
  abi_libc_version: "local"
  supports_gold_linker: false
  supports_incremental_linker: false
  supports_fission: false
  supports_interface_shared_objects: false
  supports_normalizing_ar: false
  supports_start_end_lib: false

  tool_path { name: "ar" path: "/bin/false" }
  tool_path { name: "compat-ld" path: "/bin/false" }
  tool_path { name: "cpp" path: "/bin/false" }
  tool_path { name: "dwp" path: "/bin/false" }
  tool_path { name: "gcc" path: "/bin/false" }
  tool_path { name: "gcov" path: "/bin/false" }
  tool_path { name: "ld" path: "/bin/false" }

  tool_path { name: "nm" path: "/bin/false" }
  tool_path { name: "objcopy" path: "/bin/false" }
  tool_path { name: "objdump" path: "/bin/false" }
  tool_path { name: "strip" path: "/bin/false" }
  linking_mode_flags { mode: DYNAMIC }
}

toolchain {
  toolchain_identifier: "linux_gnu_x86"
  host_system_name: "i686-unknown-linux-gnu"
  target_system_name: "x86_64-unknown-linux-gnu"
  target_cpu: "k8"
  target_libc: "local"
  compiler: "clang"
  abi_version: "clang"
  abi_libc_version: "glibc_2.19"
  tool_path {
    name: "ld"
    path: "/usr/bin/ld"
  }
  tool_path {
    name: "cpp"
    path: "/usr/bin/cpp"
  }
  tool_path {
    name: "dwp"
    path: "/usr/bin/dwp"
  }
  tool_path {
    name: "gcov"
    path: "/usr/bin/gcov"
  }
  tool_path {
    name: "nm"
    path: "/usr/bin/nm"
  }
  tool_path {
    name: "objcopy"
    path: "/usr/bin/objcopy"
  }
  tool_path {
    name: "objdump"
    path: "/usr/bin/objdump"
  }
  tool_path {
    name: "strip"
    path: "/usr/bin/strip"
  }
  tool_path {
    name: "gcc"
    path: "/usr/local/bin/clang"
  }
  tool_path {
    name: "ar"
    path: "/usr/bin/ar"
  }
  supports_gold_linker: true
  needsPic: true
  compiler_flag: "-U_FORTIFY_SOURCE"
  compiler_flag: "-fstack-protector"
  compiler_flag: "-Wall"
  compiler_flag: "-B/usr/local/bin"
  compiler_flag: "-B/usr/bin"
  compiler_flag: "-fcolor-diagnostics"
  compiler_flag: "-fno-omit-frame-pointer"
  cxx_flag: "-std=c++0x"
  linker_flag: "-lstdc++"
  linker_flag: "-lm"
  linker_flag: "-fuse-ld=gold"
  linker_flag: "-B/usr/local/bin"
  linker_flag: "-B/usr/bin"
  objcopy_embed_flag: "-I"
  objcopy_embed_flag: "binary"
  compilation_mode_flags {
    mode: DBG
    compiler_flag: "-g"
  }
  compilation_mode_flags {
    mode: OPT
    compiler_flag: "-g0"
    compiler_flag: "-O2"
    compiler_flag: "-D_FORTIFY_SOURCE=1"
    compiler_flag: "-DNDEBUG"
    compiler_flag: "-ffunction-sections"
    compiler_flag: "-fdata-sections"
    linker_flag: "-Wl,--gc-sections"
  }
  linking_mode_flags {
    mode: DYNAMIC
  }
  cxx_builtin_include_directory: "/usr/include/c++/4.9"
  cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/4.9"
  cxx_builtin_include_directory: "/usr/include/c++/4.9/backward"
  cxx_builtin_include_directory: "/usr/local/include"
  cxx_builtin_include_directory: "/usr/local/lib/clang/6.0.0/include"
  cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu"
  cxx_builtin_include_directory: "/usr/include"
  builtin_sysroot: ""
  unfiltered_cxx_flag: "-no-canonical-prefixes"
  unfiltered_cxx_flag: "-Wno-builtin-macro-redefined"
  unfiltered_cxx_flag: "-D__DATE__=\"redacted\""
  unfiltered_cxx_flag: "-D__TIMESTAMP__=\"redacted\""
  unfiltered_cxx_flag: "-D__TIME__=\"redacted\""
  supports_normalizing_ar: false
  supports_start_end_lib: true
  supports_interface_shared_objects: false
  supports_incremental_linker: false
  supports_fission: false
  feature {
    name: "no_legacy_features"
  }
  feature {
    name: "legacy_compile_flags"
    flag_set {
      action: "assemble"
      action: "preprocess-assemble"
      action: "linkstamp-compile"
      action: "c-compile"
      action: "c++-compile"
      action: "c++-header-parsing"
      action: "c++-header-preprocessing"
      action: "c++-module-compile"
      action: "c++-module-codegen"
      action: "lto-backend"
      action: "clif-match"
      flag_group {
        flag: "%{legacy_compile_flags}"
        iterate_over: "legacy_compile_flags"
      }
      expand_if_all_available: "legacy_compile_flags"
    }
    enabled: true
  }
  feature {
    name: "dependency_file"
    flag_set {
      action: "assemble"
      action: "preprocess-assemble"
      action: "c-compile"
      action: "c++-compile"
      action: "c++-module-compile"
      action: "objc-compile"
      action: "objc++-compile"
      action: "c++-header-preprocessing"
      action: "c++-header-parsing"
      action: "clif-match"
      flag_group {
        flag: "-MD"
        flag: "-MF"
        flag: "%{dependency_file}"
      }
      expand_if_all_available: "dependency_file"
    }
  }
  feature {
    name: "random_seed"
    flag_set {
      action: "c++-compile"
      action: "c++-module-codegen"
      action: "c++-module-compile"
      flag_group {
        flag: "-frandom-seed=%{output_file}"
      }
    }
  }
  feature {
    name: "pic"
    flag_set {
      action: "assemble"
      action: "preprocess-assemble"
      action: "linkstamp-compile"
      action: "c-compile"
      action: "c++-compile"
      action: "c++-module-codegen"
      action: "c++-module-compile"
      flag_group {
        flag: "-fPIC"
      }
      expand_if_all_available: "pic"
    }
  }
  feature {
    name: "per_object_debug_info"
    flag_set {
      action: "assemble"
      action: "preprocess-assemble"
      action: "c-compile"
      action: "c++-compile"
      action: "c++-module-codegen"
      flag_group {
        flag: "-gsplit-dwarf"
      }
      expand_if_all_available: "per_object_debug_info_file"
    }
  }
  feature {
    name: "preprocessor_defines"
    flag_set {
      action: "preprocess-assemble"
      action: "linkstamp-compile"
      action: "c-compile"
      action: "c++-compile"
      action: "c++-header-parsing"
      action: "c++-header-preprocessing"
      action: "c++-module-compile"
      action: "clif-match"
      flag_group {
        flag: "-D%{preprocessor_defines}"
        iterate_over: "preprocessor_defines"
      }
    }
  }
  feature {
    name: "includes"
    flag_set {
      action: "preprocess-assemble"
      action: "linkstamp-compile"
      action: "c-compile"
      action: "c++-compile"
      action: "c++-header-parsing"
      action: "c++-header-preprocessing"
      action: "c++-module-compile"
      action: "clif-match"
      action: "objc-compile"
      action: "objc++-compile"
      flag_group {
        flag: "-include"
        flag: "%{includes}"
        iterate_over: "includes"
        expand_if_all_available: "includes"
      }
    }
    enabled: true
  }
  feature {
    name: "include_paths"
    flag_set {
      action: "preprocess-assemble"
      action: "linkstamp-compile"
      action: "c-compile"
      action: "c++-compile"
      action: "c++-header-parsing"
      action: "c++-header-preprocessing"
      action: "c++-module-compile"
      action: "clif-match"
      action: "objc-compile"
      action: "objc++-compile"
      flag_group {
        flag: "-iquote"
        flag: "%{quote_include_paths}"
        iterate_over: "quote_include_paths"
      }
      flag_group {
        flag: "-I%{include_paths}"
        iterate_over: "include_paths"
      }
      flag_group {
        flag: "-isystem"
        flag: "%{system_include_paths}"
        iterate_over: "system_include_paths"
      }
    }
  }
  feature {
    name: "fdo_instrument"
    flag_set {
      action: "c-compile"
      action: "c++-compile"
      action: "c++-link-interface-dynamic-library"
      action: "c++-link-dynamic-library"
      action: "c++-link-executable"
      flag_group {
        flag: "-fprofile-generate=%{fdo_instrument_path}"
        flag: "-fno-data-sections"
      }
    }
    provides: "profile"
  }
  feature {
    name: "autofdo"
    flag_set {
      action: "c-compile"
      action: "c++-compile"
      flag_group {
        flag: "-fauto-profile=%{fdo_profile_path}"
        flag: "-fprofile-correction"
      }
      expand_if_all_available: "fdo_profile_path"
    }
    provides: "profile"
  }
  feature {
    name: "lipo"
    flag_set {
      action: "c-compile"
      action: "c++-compile"
      flag_group {
        flag: "-fripa"
      }
    }
    requires {
      feature: "autofdo"
    }
    requires {
      feature: "fdo_optimize"
    }
    requires {
      feature: "fdo_instrument"
    }
  }
  feature {
    name: "symbol_counts"
    flag_set {
      action: "c++-link-executable"
      action: "c++-link-dynamic-library"
      flag_group {
        flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
      }
      expand_if_all_available: "symbol_counts_output"
    }
  }
  feature {
    name: "shared_flag"
    flag_set {
      action: "c++-link-dynamic-library"
      flag_group {
        flag: "-shared"
      }
    }
  }
  feature {
    name: "linkstamps"
    flag_set {
      action: "c++-link-executable"
      action: "c++-link-dynamic-library"
      flag_group {
        flag: "%{linkstamp_paths}"
        iterate_over: "linkstamp_paths"
      }
      expand_if_all_available: "linkstamp_paths"
    }
  }
  feature {
    name: "output_execpath_flags"
    flag_set {
      action: "c++-link-dynamic-library"
      action: "c++-link-executable"
      flag_group {
        flag: "-o"
        flag: "%{output_execpath}"
      }
      expand_if_all_available: "output_execpath"
    }
  }
  feature {
    name: "runtime_library_search_directories"
    flag_set {
      action: "c++-link-executable"
      action: "c++-link-dynamic-library"
      flag_group {
        flag_group {
          flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
        }
        iterate_over: "runtime_library_search_directories"
      }
      expand_if_all_available: "runtime_library_search_directories"
    }
  }
  feature {
    name: "library_search_directories"
    flag_set {
      action: "c++-link-executable"
      action: "c++-link-dynamic-library"
      flag_group {
        flag: "-L%{library_search_directories}"
        iterate_over: "library_search_directories"
      }
      expand_if_all_available: "library_search_directories"
    }
  }
  feature {
    name: "archiver_flags"
    flag_set {
      action: "c++-link-static-library"
      action: "c++-link-alwayslink-static-library"
      action: "c++-link-pic-static-library"
      action: "c++-link-alwayslink-pic-static-library"
      flag_group {
        flag: "rcsD"
        flag: "%{output_execpath}"
      }
      expand_if_all_available: "output_execpath"
    }
    flag_set {
      action: "c++-link-static-library"
      action: "c++-link-alwayslink-static-library"
      action: "c++-link-pic-static-library"
      action: "c++-link-alwayslink-pic-static-library"
      flag_group {
        flag_group {
          flag: "%{libraries_to_link.name}"
          expand_if_equal {
            variable: "libraries_to_link.type"
            value: "object_file"
          }
        }
        flag_group {
          flag: "%{libraries_to_link.object_files}"
          iterate_over: "libraries_to_link.object_files"
          expand_if_equal {
            variable: "libraries_to_link.type"
            value: "object_file_group"
          }
        }
        iterate_over: "libraries_to_link"
      }
      expand_if_all_available: "libraries_to_link"
    }
  }
  feature {
    name: "libraries_to_link"
    flag_set {
      action: "c++-link-executable"
      action: "c++-link-dynamic-library"
      flag_group {
        flag_group {
          flag: "-Wl,--start-lib"
          expand_if_equal {
            variable: "libraries_to_link.type"
            value: "object_file_group"
          }
        }
        flag_group {
          flag: "-Wl,-whole-archive"
          expand_if_true: "libraries_to_link.is_whole_archive"
        }
        flag_group {
          flag: "%{libraries_to_link.object_files}"
          iterate_over: "libraries_to_link.object_files"
          expand_if_equal {
            variable: "libraries_to_link.type"
            value: "object_file_group"
          }
        }
        flag_group {
          flag: "%{libraries_to_link.name}"
          expand_if_equal {
            variable: "libraries_to_link.type"
            value: "object_file"
          }
        }
        flag_group {
          flag: "%{libraries_to_link.name}"
          expand_if_equal {
            variable: "libraries_to_link.type"
            value: "interface_library"
          }
        }
        flag_group {
          flag: "%{libraries_to_link.name}"
          expand_if_equal {
            variable: "libraries_to_link.type"
            value: "static_library"
          }
        }
        flag_group {
          flag: "-l%{libraries_to_link.name}"
          expand_if_equal {
            variable: "libraries_to_link.type"
            value: "dynamic_library"
          }
        }
        flag_group {
          flag: "-l:%{libraries_to_link.name}"
          expand_if_equal {
            variable: "libraries_to_link.type"
            value: "versioned_dynamic_library"
          }
        }
        flag_group {
          flag: "-Wl,-no-whole-archive"
          expand_if_true: "libraries_to_link.is_whole_archive"
        }
        flag_group {
          flag: "-Wl,--end-lib"
          expand_if_equal {
            variable: "libraries_to_link.type"
            value: "object_file_group"
          }
        }
        iterate_over: "libraries_to_link"
      }
      flag_group {
        flag: "-Wl,@%{thinlto_param_file}"
        expand_if_true: "thinlto_param_file"
      }
      expand_if_all_available: "libraries_to_link"
    }
  }
  feature {
    name: "force_pic_flags"
    flag_set {
      action: "c++-link-executable"
      flag_group {
        flag: "-pie"
      }
      expand_if_all_available: "force_pic"
    }
  }
  feature {
    name: "legacy_link_flags"
    flag_set {
      action: "c++-link-executable"
      action: "c++-link-dynamic-library"
      flag_group {
        flag: "%{legacy_link_flags}"
        iterate_over: "legacy_link_flags"
      }
      expand_if_all_available: "legacy_link_flags"
    }
  }
  feature {
    name: "fission_support"
    flag_set {
      action: "c++-link-executable"
      action: "c++-link-dynamic-library"
      action: "c++-link-interface-dynamic-library"
      flag_group {
        flag: "-Wl,--gdb-index"
        expand_if_all_available: "is_using_fission"
      }
    }
  }
  feature {
    name: "strip_debug_symbols"
    flag_set {
      action: "c++-link-executable"
      action: "c++-link-dynamic-library"
      action: "c++-link-interface-dynamic-library"
      flag_group {
        flag: "-Wl,-S"
        expand_if_all_available: "strip_debug_symbols"
      }
    }
  }
  feature {
    name: "coverage"
    flag_set {
      action: "preprocess-assemble"
      action: "c-compile"
      action: "c++-compile"
      action: "c++-header-parsing"
      action: "c++-header-preprocessing"
      action: "c++-module-compile"
      flag_group {
        flag: "-fprofile-arcs"
        flag: "-ftest-coverage"
      }
    }
    flag_set {
      action: "c++-link-interface-dynamic-library"
      action: "c++-link-dynamic-library"
      action: "c++-link-executable"
      flag_group {
        flag: "-lgcov"
      }
    }
    provides: "profile"
  }
  feature {
    name: "fdo_optimize"
    flag_set {
      action: "c-compile"
      action: "c++-compile"
      flag_group {
        flag: "-fprofile-use=%{fdo_profile_path}"
        flag: "-fprofile-correction"
      }
      expand_if_all_available: "fdo_profile_path"
    }
    provides: "profile"
  }
  feature {
    name: "user_compile_flags"
    flag_set {
      action: "assemble"
      action: "preprocess-assemble"
      action: "linkstamp-compile"
      action: "c-compile"
      action: "c++-compile"
      action: "c++-header-parsing"
      action: "c++-header-preprocessing"
      action: "c++-module-compile"
      action: "c++-module-codegen"
      action: "lto-backend"
      action: "clif-match"
      flag_group {
        flag: "%{user_compile_flags}"
        iterate_over: "user_compile_flags"
      }
      expand_if_all_available: "user_compile_flags"
    }
    enabled: true
  }
  feature {
    name: "sysroot"
    flag_set {
      action: "preprocess-assemble"
      action: "linkstamp-compile"
      action: "c-compile"
      action: "c++-compile"
      action: "c++-header-parsing"
      action: "c++-header-preprocessing"
      action: "c++-module-compile"
      action: "c++-link-executable"
      action: "c++-link-dynamic-library"
      action: "clif-match"
      action: "lto-backend"
      flag_group {
        flag: "--sysroot=%{sysroot}"
        expand_if_all_available: "sysroot"
      }
    }
    enabled: true
  }
  feature {
    name: "unfiltered_compile_flags"
    flag_set {
      action: "assemble"
      action: "preprocess-assemble"
      action: "linkstamp-compile"
      action: "c-compile"
      action: "c++-compile"
      action: "c++-header-parsing"
      action: "c++-header-preprocessing"
      action: "c++-module-compile"
      action: "c++-module-codegen"
      action: "lto-backend"
      action: "clif-match"
      flag_group {
        flag: "%{unfiltered_compile_flags}"
        iterate_over: "unfiltered_compile_flags"
      }
      expand_if_all_available: "unfiltered_compile_flags"
    }
    enabled: true
  }
  feature {
    name: "linker_param_file"
    flag_set {
      action: "c++-link-executable"
      action: "c++-link-dynamic-library"
      flag_group {
        flag: "-Wl,@%{linker_param_file}"
      }
      expand_if_all_available: "linker_param_file"
    }
    flag_set {
      action: "c++-link-static-library"
      action: "c++-link-alwayslink-static-library"
      action: "c++-link-pic-static-library"
      action: "c++-link-alwayslink-pic-static-library"
      flag_group {
        flag: "@%{linker_param_file}"
      }
      expand_if_all_available: "linker_param_file"
    }
  }
  action_config {
    config_name: "assemble"
    action_name: "assemble"
    tool {
      tool_path: "/usr/local/bin/clang"
    }
    implies: "legacy_compile_flags"
    implies: "user_compile_flags"
    implies: "sysroot"
    implies: "unfiltered_compile_flags"
  }
  action_config {
    config_name: "preprocess-assemble"
    action_name: "preprocess-assemble"
    tool {
      tool_path: "/usr/local/bin/clang"
    }
    implies: "legacy_compile_flags"
    implies: "user_compile_flags"
    implies: "sysroot"
    implies: "unfiltered_compile_flags"
  }
  action_config {
    config_name: "linkstamp-compile"
    action_name: "linkstamp-compile"
    tool {
      tool_path: "/usr/local/bin/clang"
    }
    implies: "legacy_compile_flags"
    implies: "user_compile_flags"
    implies: "sysroot"
    implies: "unfiltered_compile_flags"
  }
  action_config {
    config_name: "c-compile"
    action_name: "c-compile"
    tool {
      tool_path: "/usr/local/bin/clang"
    }
    implies: "legacy_compile_flags"
    implies: "user_compile_flags"
    implies: "sysroot"
    implies: "unfiltered_compile_flags"
  }
  action_config {
    config_name: "c++-compile"
    action_name: "c++-compile"
    tool {
      tool_path: "/usr/local/bin/clang"
    }
    implies: "legacy_compile_flags"
    implies: "user_compile_flags"
    implies: "sysroot"
    implies: "unfiltered_compile_flags"
  }
  action_config {
    config_name: "c++-header-parsing"
    action_name: "c++-header-parsing"
    tool {
      tool_path: "/usr/local/bin/clang"
    }
    implies: "legacy_compile_flags"
    implies: "user_compile_flags"
    implies: "sysroot"
    implies: "unfiltered_compile_flags"
  }
  action_config {
    config_name: "c++-header-preprocessing"
    action_name: "c++-header-preprocessing"
    tool {
      tool_path: "/usr/local/bin/clang"
    }
    implies: "legacy_compile_flags"
    implies: "user_compile_flags"
    implies: "sysroot"
    implies: "unfiltered_compile_flags"
  }
  action_config {
    config_name: "c++-module-compile"
    action_name: "c++-module-compile"
    tool {
      tool_path: "/usr/local/bin/clang"
    }
    implies: "legacy_compile_flags"
    implies: "user_compile_flags"
    implies: "sysroot"
    implies: "unfiltered_compile_flags"
  }
  action_config {
    config_name: "c++-module-codegen"
    action_name: "c++-module-codegen"
    tool {
      tool_path: "/usr/local/bin/clang"
    }
    implies: "legacy_compile_flags"
    implies: "user_compile_flags"
    implies: "sysroot"
    implies: "unfiltered_compile_flags"
  }
  action_config {
    config_name: "c++-link-executable"
    action_name: "c++-link-executable"
    tool {
      tool_path: "/usr/local/bin/clang++"
    }
    implies: "symbol_counts"
    implies: "strip_debug_symbols"
    implies: "linkstamps"
    implies: "output_execpath_flags"
    implies: "runtime_library_search_directories"
    implies: "library_search_directories"
    implies: "libraries_to_link"
    implies: "force_pic_flags"
    implies: "legacy_link_flags"
    implies: "linker_param_file"
    implies: "fission_support"
    implies: "sysroot"
  }
  action_config {
    config_name: "c++-link-dynamic-library"
    action_name: "c++-link-dynamic-library"
    tool {
      tool_path: "/usr/local/bin/clang++"
    }
    implies: "symbol_counts"
    implies: "strip_debug_symbols"
    implies: "shared_flag"
    implies: "linkstamps"
    implies: "output_execpath_flags"
    implies: "runtime_library_search_directories"
    implies: "library_search_directories"
    implies: "libraries_to_link"
    implies: "legacy_link_flags"
    implies: "linker_param_file"
    implies: "fission_support"
    implies: "sysroot"
  }
  action_config {
    config_name: "c++-link-static-library"
    action_name: "c++-link-static-library"
    tool {
      tool_path: "/usr/bin/ar"
    }
    implies: "archiver_flags"
    implies: "linker_param_file"
  }
  action_config {
    config_name: "c++-link-alwayslink-static-library"
    action_name: "c++-link-alwayslink-static-library"
    tool {
      tool_path: "/usr/bin/ar"
    }
    implies: "archiver_flags"
    implies: "linker_param_file"
  }
  action_config {
    config_name: "c++-link-pic-static-library"
    action_name: "c++-link-pic-static-library"
    tool {
      tool_path: "/usr/bin/ar"
    }
    implies: "archiver_flags"
    implies: "linker_param_file"
  }
  action_config {
    config_name: "c++-link-alwayslink-pic-static-library"
    action_name: "c++-link-alwayslink-pic-static-library"
    tool {
      tool_path: "/usr/bin/ar"
    }
    implies: "archiver_flags"
    implies: "linker_param_file"
  }
  action_config {
    config_name: "strip"
    action_name: "strip"
    tool {
      tool_path: "/usr/bin/strip"
    }
    flag_set {
      flag_group {
        flag: "-S"
        flag: "-p"
        flag: "-o"
        flag: "%{output_file}"
      }
      flag_group {
        flag: "-R"
        flag: ".gnu.switches.text.quote_paths"
        flag: "-R"
        flag: ".gnu.switches.text.bracket_paths"
        flag: "-R"
        flag: ".gnu.switches.text.system_paths"
        flag: "-R"
        flag: ".gnu.switches.text.cpp_defines"
        flag: "-R"
        flag: ".gnu.switches.text.cpp_includes"
        flag: "-R"
        flag: ".gnu.switches.text.cl_args"
        flag: "-R"
        flag: ".gnu.switches.text.lipo_info"
        flag: "-R"
        flag: ".gnu.switches.text.annotation"
      }
      flag_group {
        flag: "%{stripopts}"
        iterate_over: "stripopts"
      }
      flag_group {
        flag: "%{input_file}"
      }
    }
  }
}

toolchain {
  toolchain_identifier: "msvc_x64"
  host_system_name: "local"
  target_system_name: "local"

  abi_version: "local"
  abi_libc_version: "local"
  target_cpu: "x64_windows"
  compiler: "cl"
  target_libc: "msvcrt140"
  default_python_version: "python2.7"



  tool_path {
    name: "ar"
    path: ""
  }
  tool_path {
    name: "ml"
    path: ""
  }
  tool_path {
    name: "cpp"
    path: ""
  }
  tool_path {
    name: "gcc"
    path: ""
  }
  tool_path {
    name: "gcov"
    path: "wrapper/bin/msvc_nop.bat"
  }
  tool_path {
    name: "ld"
    path: ""
  }
  tool_path {
    name: "nm"
    path: "wrapper/bin/msvc_nop.bat"
  }
  tool_path {
    name: "objcopy"
    path: "wrapper/bin/msvc_nop.bat"
  }
  tool_path {
    name: "objdump"
    path: "wrapper/bin/msvc_nop.bat"
  }
  tool_path {
    name: "strip"
    path: "wrapper/bin/msvc_nop.bat"
  }
  supports_gold_linker: false
  supports_start_end_lib: false
  supports_interface_shared_objects: true
  supports_incremental_linker: false
  supports_normalizing_ar: true
  needsPic: false

  # TODO(pcloudy): Review those flags below, they should be defined by cl.exe
  compiler_flag: "/DCOMPILER_MSVC"

  # Don't define min/max macros in windows.h.
  compiler_flag: "/DNOMINMAX"

  # Platform defines.
  compiler_flag: "/D_WIN32_WINNT=0x0600"
  # Turn off warning messages.
  compiler_flag: "/D_CRT_SECURE_NO_DEPRECATE"
  compiler_flag: "/D_CRT_SECURE_NO_WARNINGS"
  compiler_flag: "/D_SILENCE_STDEXT_HASH_DEPRECATION_WARNINGS"

  # Useful options to have on for compilation.
  # Increase the capacity of object files to 2^32 sections.
  compiler_flag: "/bigobj"
  # Allocate 500MB for precomputed headers.
  compiler_flag: "/Zm500"
  # Use unsigned char by default.
  compiler_flag: "/J"
  # Use function level linking.
  compiler_flag: "/Gy"
  # Use string pooling.
  compiler_flag: "/GF"
  # Catch both asynchronous (structured) and synchronous (C++) exceptions.
  compiler_flag: "/EHsc"

  # Globally disabled warnings.
  # Don't warn about elements of array being be default initialized.
  compiler_flag: "/wd4351"
  # Don't warn about no matching delete found.
  compiler_flag: "/wd4291"
  # Don't warn about diamond inheritance patterns.
  compiler_flag: "/wd4250"
  # Don't warn about insecure functions (e.g. non _s functions).
  compiler_flag: "/wd4996"

  linker_flag: "/MACHINE:X64"

  feature {
    name: "no_legacy_features"
  }

  # Suppress startup banner.
  feature {
    name: "nologo"
    flag_set {
      action: "c-compile"
      action: "c++-compile"
      action: "c++-module-compile"
      action: "c++-module-codegen"
      action: "c++-header-parsing"
      action: "c++-header-preprocessing"
      action: "assemble"
      action: "preprocess-assemble"
      action: "c++-link-executable"
      action: "c++-link-dynamic-library"
      action: "c++-link-static-library"
      action: "c++-link-alwayslink-static-library"
      action: "c++-link-pic-static-library"
      action: "c++-link-alwayslink-pic-static-library"
      flag_group {
        flag: "/nologo"
      }
    }
  }

  # This feature is just for enabling flag_set in action_config for -c and -o options during the transitional period
  feature {
    name: 'compile_action_flags_in_flag_set'
  }

  feature {
    name: 'has_configured_linker_path'
  }


  # This feature indicates strip is not supported, building stripped binary will just result a copy of orignial binary
  feature {
    name: 'no_stripping'
  }

  # This feature indicates this is a toolchain targeting Windows.
  feature {
    name: 'targets_windows'
    implies: 'copy_dynamic_libraries_to_binary'
    enabled: true
  }

  feature {
    name: 'copy_dynamic_libraries_to_binary'
  }

  action_config {
    config_name: 'assemble'
    action_name: 'assemble'
    tool {
      tool_path: ''
    }
    flag_set {
      expand_if_all_available: 'output_object_file'
      flag_group {
        flag: '/Fo%{output_object_file}'
        flag: '/Zi'
        flag: '/c'
        flag: '%{source_file}'
      }
    }
    implies: 'nologo'
    implies: 'msvc_env'
    implies: 'sysroot'
  }

  action_config {
    config_name: 'c-compile'
    action_name: 'c-compile'
    tool {
      tool_path: ''
    }
    flag_set {
      flag_group {
        flag: '/c'
        flag: '%{source_file}'
      }
    }
    flag_set {
      expand_if_all_available: 'output_object_file'
      flag_group {
        flag: '/Fo%{output_object_file}'
      }
    }
    flag_set {
      expand_if_all_available: 'output_assembly_file'
      flag_group {
        flag: '/Fa%{output_assembly_file}'
      }
    }
    flag_set {
      expand_if_all_available: 'output_preprocess_file'
      flag_group {
        flag: '/P'
        flag: '/Fi%{output_preprocess_file}'
      }
    }
    implies: 'legacy_compile_flags'
    implies: 'nologo'
    implies: 'msvc_env'
    implies: 'parse_showincludes'
    implies: 'user_compile_flags'
    implies: 'sysroot'
    implies: 'unfiltered_compile_flags'
  }

  action_config {
    config_name: 'c++-compile'
    action_name: 'c++-compile'
    tool {
      tool_path: ''
    }
    flag_set {
      flag_group {
        flag: '/c'
        flag: '%{source_file}'
      }
    }
    flag_set {
      expand_if_all_available: 'output_object_file'
      flag_group {
        flag: '/Fo%{output_object_file}'
      }
    }
    flag_set {
      expand_if_all_available: 'output_assembly_file'
      flag_group {
        flag: '/Fa%{output_assembly_file}'
      }
    }
    flag_set {
      expand_if_all_available: 'output_preprocess_file'
      flag_group {
        flag: '/P'
        flag: '/Fi%{output_preprocess_file}'
      }
    }
    implies: 'legacy_compile_flags'
    implies: 'nologo'
    implies: 'msvc_env'
    implies: 'parse_showincludes'
    implies: 'user_compile_flags'
    implies: 'sysroot'
    implies: 'unfiltered_compile_flags'
  }

  action_config {
    config_name: 'c++-link-executable'
    action_name: 'c++-link-executable'
    tool {
      tool_path: ''
    }
    implies: 'nologo'
    implies: 'linkstamps'
    implies: 'output_execpath_flags'
    implies: 'input_param_flags'
    implies: 'legacy_link_flags'
    implies: 'linker_subsystem_flag'
    implies: 'linker_param_file'
    implies: 'msvc_env'
    implies: 'use_linker'
    implies: 'no_stripping'
  }

  action_config {
    config_name: 'c++-link-dynamic-library'
    action_name: 'c++-link-dynamic-library'
    tool {
      tool_path: ''
    }
    implies: 'nologo'
    implies: 'shared_flag'
    implies: 'linkstamps'
    implies: 'output_execpath_flags'
    implies: 'input_param_flags'
    implies: 'legacy_link_flags'
    implies: 'linker_subsystem_flag'
    implies: 'linker_param_file'
    implies: 'msvc_env'
    implies: 'use_linker'
    implies: 'no_stripping'
    implies: 'has_configured_linker_path'
    implies: 'def_file'
  }

  action_config {
    config_name: 'c++-link-static-library'
    action_name: 'c++-link-static-library'
    tool {
      tool_path: ''
    }
    implies: 'nologo'
    implies: 'archiver_flags'
    implies: 'input_param_flags'
    implies: 'linker_param_file'
    implies: 'msvc_env'
  }

  action_config {
    config_name: 'c++-link-alwayslink-static-library'
    action_name: 'c++-link-alwayslink-static-library'
    tool {
      tool_path: ''
    }
    implies: 'nologo'
    implies: 'archiver_flags'
    implies: 'input_param_flags'
    implies: 'linker_param_file'
    implies: 'msvc_env'
  }

  # TODO(pcloudy): The following action_config is listed in MANDATORY_LINK_TARGET_TYPES.
  # But do we really need them on Windows?
  action_config {
    config_name: 'c++-link-pic-static-library'
    action_name: 'c++-link-pic-static-library'
    tool {
      tool_path: ''
    }
    implies: 'nologo'
    implies: 'archiver_flags'
    implies: 'input_param_flags'
    implies: 'linker_param_file'
    implies: 'msvc_env'
  }

  action_config {
    config_name: 'c++-link-alwayslink-pic-static-library'
    action_name: 'c++-link-alwayslink-pic-static-library'
    tool {
      tool_path: ''
    }
    implies: 'nologo'
    implies: 'archiver_flags'
    implies: 'input_param_flags'
    implies: 'linker_param_file'
    implies: 'msvc_env'
  }

  action_config {
    config_name: 'c++-link-interface-dynamic-library'
    action_name: 'c++-link-interface-dynamic-library'
    tool {
      tool_path: ''
    }
    implies: 'nologo'
    implies: 'linker_param_file'
    implies: 'msvc_env'
  }

  # TODO(b/65151735): Remove legacy_compile_flags feature when legacy fields are
  # not used in this crosstool
  feature {
    name: 'legacy_compile_flags'
    flag_set {
      expand_if_all_available: 'legacy_compile_flags'
      action: 'preprocess-assemble'
      action: 'c-compile'
      action: 'c++-compile'
      action: 'c++-header-parsing'
      action: 'c++-header-preprocessing'
      action: 'c++-module-compile'
      action: 'c++-module-codegen'
      flag_group {
        iterate_over: 'legacy_compile_flags'
        flag: '%{legacy_compile_flags}'
      }
    }
  }

  feature {
    name: "msvc_env"
    env_set {
      action: "c-compile"
      action: "c++-compile"
      action: "c++-module-compile"
      action: "c++-module-codegen"
      action: "c++-header-parsing"
      action: "c++-header-preprocessing"
      action: "assemble"
      action: "preprocess-assemble"
      action: "c++-link-executable"
      action: "c++-link-dynamic-library"
      action: "c++-link-static-library"
      action: "c++-link-alwayslink-static-library"
      action: "c++-link-pic-static-library"
      action: "c++-link-alwayslink-pic-static-library"
      env_entry {
        key: "PATH"
        value: ""
      }
      env_entry {
        key: "INCLUDE"
        value: ""
      }
      env_entry {
        key: "LIB"
        value: ""
      }
      env_entry {
        key: "TMP"
        value: ""
      }
      env_entry {
        key: "TEMP"
        value: ""
      }
    }
  }

  feature {
    name: "use_linker"
    env_set {
      action: "c++-link-executable"
      action: "c++-link-dynamic-library"
      env_entry {
        key: "USE_LINKER"
        value: "1"
      }
    }
  }

  feature {
    name: 'include_paths'
    flag_set {
      action: "assemble"
      action: 'preprocess-assemble'
      action: 'c-compile'
      action: 'c++-compile'
      action: 'c++-header-parsing'
      action: 'c++-header-preprocessing'
      action: 'c++-module-compile'
      flag_group {
        iterate_over: 'quote_include_paths'
        flag: '/I%{quote_include_paths}'
      }
      flag_group {
        iterate_over: 'include_paths'
        flag: '/I%{include_paths}'
      }
      flag_group {
        iterate_over: 'system_include_paths'
        flag: '/I%{system_include_paths}'
      }
    }
  }

  feature {
    name: "preprocessor_defines"
    flag_set {
      action: "assemble"
      action: "preprocess-assemble"
      action: "c-compile"
      action: "c++-compile"
      action: "c++-header-parsing"
      action: "c++-header-preprocessing"
      action: "c++-module-compile"
      flag_group {
        flag: "/D%{preprocessor_defines}"
        iterate_over: "preprocessor_defines"
      }
    }
  }

  # Tell Bazel to parse the output of /showIncludes
  feature {
    name: 'parse_showincludes'
    flag_set {
      action: 'preprocess-assemble'
      action: 'c-compile'
      action: 'c++-compile'
      action: 'c++-module-compile'
      action: 'c++-header-preprocessing'
      action: 'c++-header-parsing'
      flag_group {
        flag: "/showIncludes"
      }
    }
  }


  feature {
    name: 'generate_pdb_file'
    requires: {
      feature: 'dbg'
    }
    requires: {
      feature: 'fastbuild'
    }
  }

  feature {
    name: 'shared_flag'
    flag_set {
      action: 'c++-link-dynamic-library'
      flag_group {
        flag: '/DLL'
      }
    }
  }

  feature {
    name: 'linkstamps'
    flag_set {
      action: 'c++-link-executable'
      action: 'c++-link-dynamic-library'
      expand_if_all_available: 'linkstamp_paths'
      flag_group {
        iterate_over: 'linkstamp_paths'
        flag: '%{linkstamp_paths}'
      }
    }
  }

  feature {
    name: 'output_execpath_flags'
    flag_set {
      expand_if_all_available: 'output_execpath'
      action: 'c++-link-executable'
      action: 'c++-link-dynamic-library'
      flag_group {
        flag: '/OUT:%{output_execpath}'
      }
    }
  }

  feature {
    name: 'archiver_flags'
    flag_set {
      expand_if_all_available: 'output_execpath'
      action: 'c++-link-static-library'
      action: 'c++-link-alwayslink-static-library'
      action: 'c++-link-pic-static-library'
      action: 'c++-link-alwayslink-pic-static-library'
      flag_group {
        flag: '/OUT:%{output_execpath}'
      }
    }
  }

  feature {
    name: 'input_param_flags'
    flag_set {
      expand_if_all_available: 'interface_library_output_path'
      action: 'c++-link-dynamic-library'
      flag_group {
        flag: "/IMPLIB:%{interface_library_output_path}"
      }
    }
    flag_set {
      expand_if_all_available: 'libopts'
      action: 'c++-link-executable'
      action: 'c++-link-dynamic-library'
      flag_group {
        iterate_over: 'libopts'
        flag: '%{libopts}'
      }
    }
    flag_set {
      expand_if_all_available: 'libraries_to_link'
      action: 'c++-link-executable'
      action: 'c++-link-dynamic-library'
      action: 'c++-link-static-library'
      action: 'c++-link-alwayslink-static-library'
      action: 'c++-link-pic-static-library'
      action: 'c++-link-alwayslink-pic-static-library'
      flag_group {
        iterate_over: 'libraries_to_link'
        flag_group {
          expand_if_equal: {
            variable: 'libraries_to_link.type'
            value: 'object_file_group'
          }
          iterate_over: 'libraries_to_link.object_files'
          flag_group {
            flag: '%{libraries_to_link.object_files}'
          }
        }
        flag_group {
          expand_if_equal: {
            variable: 'libraries_to_link.type'
            value: 'object_file'
          }
          flag_group {
            flag: '%{libraries_to_link.name}'
          }
        }
        flag_group {
          expand_if_equal: {
            variable: 'libraries_to_link.type'
            value: 'interface_library'
          }
          flag_group {
            expand_if_false: 'libraries_to_link.is_whole_archive'
            flag: '%{libraries_to_link.name}'
          }
          flag_group {
            expand_if_true: 'libraries_to_link.is_whole_archive'
            flag: '/WHOLEARCHIVE:%{libraries_to_link.name}'
          }
        }
        flag_group {
          expand_if_equal: {
            variable: 'libraries_to_link.type'
            value: 'static_library'
          }
          flag_group {
            expand_if_false: 'libraries_to_link.is_whole_archive'
            flag: '%{libraries_to_link.name}'
          }
          flag_group {
            expand_if_true: 'libraries_to_link.is_whole_archive'
            flag: '/WHOLEARCHIVE:%{libraries_to_link.name}'
          }
        }
        flag_group {
          expand_if_equal: {
            variable: 'libraries_to_link.type'
            value: 'dynamic_library'
          }
          flag_group {
            expand_if_false: 'libraries_to_link.is_whole_archive'
            flag: '%{libraries_to_link.name}'
          }
          flag_group {
            expand_if_true: 'libraries_to_link.is_whole_archive'
            flag: '/WHOLEARCHIVE:%{libraries_to_link.name}'
          }
        }
        flag_group {
          expand_if_equal: {
            variable: 'libraries_to_link.type'
            value: 'versioned_dynamic_library'
          }
          flag_group {
            expand_if_false: 'libraries_to_link.is_whole_archive'
            flag: '%{libraries_to_link.name}'
          }
          flag_group {
            expand_if_true: 'libraries_to_link.is_whole_archive'
            flag: '/WHOLEARCHIVE:%{libraries_to_link.name}'
          }
        }
      }
    }
  }

  # Since this feature is declared earlier in the CROSSTOOL than
  # "legacy_link_flags", this feature will be applied prior to it anwyhere they
  # are both implied. And since "legacy_link_flags" contains the linkopts from
  # the build rule, this allows the user to override the /SUBSYSTEM in the BUILD
  # file.
  feature {
    name: 'linker_subsystem_flag'
    flag_set {
      action: 'c++-link-executable'
      action: 'c++-link-dynamic-library'
      flag_group {
        flag: '/SUBSYSTEM:CONSOLE'
      }
    }
  }

  # The "legacy_link_flags" may contain user-defined linkopts (from build rules)
  # so it should be defined after features that declare user-overridable flags.
  # For example the "linker_subsystem_flag" defines a default "/SUBSYSTEM" flag
  # but we want to let the user override it, therefore "link_flag_subsystem" is
  # defined earlier in the CROSSTOOL file than "legacy_link_flags".
  feature {
    name: 'legacy_link_flags'
    flag_set {
      expand_if_all_available: 'legacy_link_flags'
      action: 'c++-link-executable'
      action: 'c++-link-dynamic-library'
      flag_group {
        iterate_over: 'legacy_link_flags'
        flag: '%{legacy_link_flags}'
      }
    }
  }

  feature {
    name: 'linker_param_file'
    flag_set {
      expand_if_all_available: 'linker_param_file'
      action: 'c++-link-executable'
      action: 'c++-link-dynamic-library'
      action: 'c++-link-static-library'
      action: 'c++-link-alwayslink-static-library'
      action: 'c++-link-pic-static-library'
      action: 'c++-link-alwayslink-pic-static-library'
      flag_group {
        flag: '@%{linker_param_file}'
      }
    }
  }

  feature {
    name: 'static_link_msvcrt'
  }

  feature {
    name: 'static_link_msvcrt_no_debug'
    flag_set {
      action: 'c-compile'
      action: 'c++-compile'
      flag_group {
        flag: "/MT"
      }
    }
    flag_set {
      action: 'c++-link-executable'
      action: 'c++-link-dynamic-library'
      flag_group {
        flag: "/DEFAULTLIB:libcmt.lib"
      }
    }
    requires: { feature: 'fastbuild'}
    requires: { feature: 'opt'}
  }

  feature {
    name: 'dynamic_link_msvcrt_no_debug'
    flag_set {
      action: 'c-compile'
      action: 'c++-compile'
      flag_group {
        flag: "/MD"
      }
    }
    flag_set {
      action: 'c++-link-executable'
      action: 'c++-link-dynamic-library'
      flag_group {
        flag: "/DEFAULTLIB:msvcrt.lib"
      }
    }
    requires: { feature: 'fastbuild'}
    requires: { feature: 'opt'}
  }

  feature {
    name: 'static_link_msvcrt_debug'
    flag_set {
      action: 'c-compile'
      action: 'c++-compile'
      flag_group {
        flag: "/MTd"
      }
    }
    flag_set {
      action: 'c++-link-executable'
      action: 'c++-link-dynamic-library'
      flag_group {
        flag: "/DEFAULTLIB:libcmtd.lib"
      }
    }
    requires: { feature: 'dbg'}
  }

  feature {
    name: 'dynamic_link_msvcrt_debug'
    flag_set {
      action: 'c-compile'
      action: 'c++-compile'
      flag_group {
        flag: "/MDd"
      }
    }
    flag_set {
      action: 'c++-link-executable'
      action: 'c++-link-dynamic-library'
      flag_group {
        flag: "/DEFAULTLIB:msvcrtd.lib"
      }
    }
    requires: { feature: 'dbg'}
  }

  feature {
    name: 'dbg'
    flag_set {
      action: 'c-compile'
      action: 'c++-compile'
      flag_group {
        flag: "/Od"
        flag: "/Z7"
        flag: "/DDEBUG"
      }
    }
    flag_set {
      action: 'c++-link-executable'
      action: 'c++-link-dynamic-library'
      flag_group {
        flag: "/DEBUG:FULL"
        flag: "/INCREMENTAL:NO"
      }
    }
    implies: 'generate_pdb_file'
  }

  feature {
    name: 'fastbuild'
    flag_set {
      action: 'c-compile'
      action: 'c++-compile'
      flag_group {
        flag: "/Od"
        flag: "/Z7"
        flag: "/DDEBUG"
      }
    }
    flag_set {
      action: 'c++-link-executable'
      action: 'c++-link-dynamic-library'
      flag_group {
        flag: "/DEBUG:FASTLINK"
        flag: "/INCREMENTAL:NO"
      }
    }
    implies: 'generate_pdb_file'
  }

  feature {
    name: 'opt'
    flag_set {
      action: 'c-compile'
      action: 'c++-compile'
      flag_group {
        flag: "/O2"
        flag: "/DNDEBUG"
      }
    }
  }

  feature {
    name: 'user_compile_flags'
    flag_set {
      expand_if_all_available: 'user_compile_flags'
      action: 'preprocess-assemble'
      action: 'c-compile'
      action: 'c++-compile'
      action: 'c++-header-parsing'
      action: 'c++-header-preprocessing'
      action: 'c++-module-compile'
      action: 'c++-module-codegen'
      flag_group {
        iterate_over: 'user_compile_flags'
        flag: '%{user_compile_flags}'
      }
    }
  }

  feature {
    name: 'sysroot'
    flag_set {
      expand_if_all_available: 'sysroot'
      action: 'assemble'
      action: 'preprocess-assemble'
      action: 'c-compile'
      action: 'c++-compile'
      action: 'c++-header-parsing'
      action: 'c++-header-preprocessing'
      action: 'c++-module-compile'
      action: 'c++-module-codegen'
      action: 'c++-link-executable'
      action: 'c++-link-dynamic-library'
      flag_group {
        iterate_over: 'sysroot'
        flag: '--sysroot=%{sysroot}'
      }
    }
  }

  feature {
    name: 'unfiltered_compile_flags'
    flag_set {
      expand_if_all_available: 'unfiltered_compile_flags'
      action: 'preprocess-assemble'
      action: 'c-compile'
      action: 'c++-compile'
      action: 'c++-header-parsing'
      action: 'c++-header-preprocessing'
      action: 'c++-module-compile'
      action: 'c++-module-codegen'
      flag_group {
        iterate_over: 'unfiltered_compile_flags'
        flag: '%{unfiltered_compile_flags}'
      }
    }
  }

  feature {
    name : 'def_file',
    flag_set {
      expand_if_all_available: 'def_file_path'
      action: 'c++-link-executable'
      action: 'c++-link-dynamic-library'
      flag_group {
        flag: "/DEF:%{def_file_path}"
        # We can specify a different DLL name in DEF file, /ignore:4070 suppresses
        # the warning message about DLL name doesn't match the default one.
        # See https://msdn.microsoft.com/en-us/library/sfkk2fz7.aspx
        flag: "/ignore:4070"
      }
    }
  }

  feature {
    name: 'windows_export_all_symbols'
  }

  feature {
    name: 'no_windows_export_all_symbols'
  }

  linking_mode_flags { mode: DYNAMIC }



}
